美文网首页
Android屏幕适配

Android屏幕适配

作者: liuzhimi | 来源:发表于2019-04-08 21:20 被阅读0次

基本概念

  • 屏幕尺寸:屏幕尺寸指屏幕的对角线的长度,单位是英寸,1英寸=2.54厘米。
  • 屏幕分辨率:在横纵向上的像素点数,单位是px。
  • 屏幕像素密度(ppi):每英寸屏幕所拥有的像素数。可视作等价于dpi

每英寸所拥有的像素数目_{PPI}=\frac{\sqrt{横向^2_ {pixel}+ 纵向^2_{pixel}}}{屏幕尺寸_{inch}}

  • dp:也叫dip,是一种密度无关像素,在不同像素密度设备上会自动适配。
    px=dp*\frac{dpi}{160}
    官方定义在160dpi下,1dip = 1px。
dpi/160 像素密度范围
mdpi 0.75~1.0 120dpi~160dpi
hdpi 1.0~1.5 160dpi~240dpi
xdpi 1.5~2 240dpi~320dpi
xxdpi 2~3 320dpi~480dpi
xxxdpi 3~4 480dpi~640dpi

使用dp做屏幕适配依旧会引发问题

Android提供了dp来做屏幕适配,但仍会出现问题。
假设有两个设备:

屏幕宽度 屏幕像素密度(dpi) 屏幕总dp宽度 100dp占比
720px 320dpi 360dp 28%
1080px 400dpi 432dp 23%

这种情况就导致了在不同设备,100dp在屏幕上占比不同。所以使用dp来适配屏幕也不是最完美的解决方案。


如何适配屏幕

百分比适配

给每个分辨率的设备都引入一个value文件夹
比如:

  • values-720x1080
  • values-1080x1920
  • ......
    在720x1080分辨率中,<dimen name="x1">1.0px</dimen>
    则在1080x1920分辨率中,<dimen name="x1">2.0px</dimen>

相关文章

网友评论

      本文标题:Android屏幕适配

      本文链接:https://www.haomeiwen.com/subject/aanpiqtx.html