1,分辨率1200X2000的10.95寸的平板,dpi如何确定?
首先,根据网上其他同学的计算:
ppi = 1200的平方+2000的平方, dpi = ppi开平方/inch, 计算得到dpi为213.
但是从平板上查询的结果如下
$ wm size
Physical size: 1200x2000
$ wm density
Physical density: 320
经过验证发现,dpi使用的是320。
2, 资源中valuse 和values-sw600dp到底如何选择的?
这里,sw600dp代表是最小的屏幕宽度为600dp,对应像素为600dp*2 = 1200px,
这里2 = 320dpi/160dpi 160dpi是基准,当设备是160dpi时,1px=1dp。
从上面知道px和dp的计算关系了,对于sp基本上可以相等于dp(1sp=1dp).
3. 再来看设计稿上面如何看
首先找到Android XHPI @2x这个选项,看整个页面的尺寸是1200X2000像素。
这样我们就知道对应的界面上面像素值。
如果边距是48px,那么资源里面定义可以写24dp,并且放在values-sw600dp下最准确。
4, 设置中的显示大小也会响应配置的资源尺寸, 下面看如何配置
如 设备800px*1280px, 默认density为1.5, 默认资源文件values-sw533dp(values-sw500dp)
一个控件宽度784px, 放在values-sw500dp、values下配置为 784/1.5=522dp
那么显示最大时,density为2.0, 对应的资源文件夹问values-sw400dp 配置为784/2=392
大家有什么疑问可以交流!