屏幕适配

2016-06-15  本文已影响48人  jacky123

前言

dp 能够让同一数值在不同的分辨率展示出大致相同的尺寸大小。但是当设备的尺寸差异较大的时候,就无能为力了。适配的问题还需要我们自己去做。

常见手机屏幕像素及对应分辨率级别

|密度类型 |代表的分辨率(px)| 屏幕像素密度(dpi) |换算关系 |比例|
| ------------- |:-------------:| -----:|
|低密度(ldpi)| 240320 |120 |1dp=0.75px|3|
|中密度(mdpi)| 320
480 |160| 1dp=1.0px| 4
|高密度(hdpi) |480800| 240 |1dp=1.5px |6
|超高密度(xhdpi) |720
1280| 320| 1dp=2.0px| 8
|超超高密度(xxhdpi) |1080*1920| 480| 1dp=3.0px |12|

适配的tips:

使用Size限定符有一个问题会让很多程序员感到头疼,large到底是指多大呢?很多应用程序都希望能够更自由地为不同屏幕设备加载不同的布局,不管它们是不是被系统认定为"large"。这就是Android为什么在3.2以后引入了"Smallest-width"限定符。
Smallest-width限定符允许你设定一个具体的最小值(以dp为单位)来指定屏幕。例如,7寸的平板最小宽度是600dp,所以如果你想让你的UI在这种屏幕上显示two pane,在更小的屏幕上显示single pane,你可以使用sw600dp来表示你想在600dp以上宽度的屏幕上使用two pane模式。

res/values-sw600dp-land/layouts.xml:
res/values-sw600dp-port/layouts.xml:

参考资料

  1. 郭霖的 Android官方提供的支持不同屏幕大小的全部方法
上一篇 下一篇

猜你喜欢

热点阅读