Difficulty to understand how to support multiple screen

前端 未结 4 593
Happy的楠姐
Happy的楠姐 2021-02-06 18:06

I have seen so many questions on StackOverFlow how to support multiple screens. But most of the answers provide this link and this. And in the first one link I have

相关标签:
4条回答
  • 2021-02-06 18:26

    From Android: Supporting Multiple Screens

    px = dp * (dpi / 160)

    Illustration of how Android roughly maps actual sizes and densities to generalized sizes and densities (figures are not exact)


    So for your example:

    Your image dimensions are 960dp x 720dp and your dpi is 320 (which you can see falls under XHDPI).

    Height = 960dp * (320 / 160) = 1920px
    
    Width = 720dp * (320 / 160) = 1440px
    

    Height and width are arbitrary depending on the orientation of the phone

    0 讨论(0)
  • 2021-02-06 18:32

    In android-

    px = dp * (dpi / 160)
    
    1. So in your first question 960dp x 720dp at 320dpi means 1920px x 1440px for xlarge screen in landscape mode using above formula.

    2. 640dp x 480dp at 240dpi means 960px x 720px for large screen in landscape mode.

    To learn more about check this.

    0 讨论(0)
  • 2021-02-06 18:33

    Refer this for Conversion of dp into px for each dpi (Android) Refer this for Conversion of dp into px for each dpi (Android)

    0 讨论(0)
  • 2021-02-06 18:48

    dp means density independent pixel. When you say for example 300dp means 300 pixels on a medium density (160dpi) screen. So if you want to translate dp on real resolution you have to multiply the dp for the density scale factor: es 300dp are

    1. 300 px on a mdpi screen
    2. 450 px on a hdpi screen
    3. 600 px on a xhdpi screen

    so if you specify resources you should remember to use both size and density modifiers a background for a 480x800 px medium screen phone woul be picked from normal-hdpi folder an so on

    0 讨论(0)
提交回复
热议问题