How can i support multiple screen sizes in android with single xml layout file

后端 未结 9 2216
鱼传尺愫
鱼传尺愫 2021-02-06 12:54

I want to support my android screen in multiple screen sizes but i can do it with maintaining multiple xml layout file\'s

but according to requirement it i supposed to b

9条回答
  •  忘了有多久
    2021-02-06 13:35

    Create three different Layouts Folder in your res folder for all devices and use the dimensions accordingly.

    Generic Layout Folders

    res/layout-small
    res/layout-normal
    res/layout-large
    res/layout-xlarge
    

    After you are done with making your Normal/Medium Layouts follow these steps:

    1. Convert the Normal Dimensions for other Screen Sizes.
    2. Copy your Normal Layout xml files in to other Folders.
    3. Change the suffix of the dimensions used according to the folder that you are in
    4. Resize the Image Resources in your drawable folder (Width and Height - Same technique as we used for converting the dimens) and put them in their respective drawable folder (drawable-ldpi, drawable-mdpi, drawable-hdpi, drawable-xdpi and so on).
    5. Then your Layouts should work on every device with correct positioning.

    For converting Values

    0.75 - ldpi  (small)   //mdpi dimens *0.75
    1.0  - mdpi  (normal)  //First create these dimensions
    1.5  - hdpi  (large)   //mdpi dimens *1.5
    2.0  - xhdpi (xLarge)  //mdpi dimens *2.0
    

    For Example

    android:layout_width="66dip" //in normal
    android:layout_width="100dip"//in large 66*1.5=100(approx)
    android:layout_width="52dip" //in small 66*0.75=52(approx)
    

    Also new Qualifier has been introduced - SmallestWidth - AvailableScreenWidth - AvailableScreenHeight

    read more about it here https://developer.android.com/guide/practices/screens_support.html

    I hope this helps.

提交回复
热议问题