android屏幕密度规律及dp px转换
Posted 工作学习生活思考总结
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android屏幕密度规律及dp px转换相关的知识,希望对你有一定的参考价值。
0 适配根据密度:120dpi(240px) ldpi ,160dpi(320px) mdpi, 240dpi(480px) hdpi, 320dpi(640px) xhdpi, 480dpi(960px) xxdpi, 640dpi(1280px) xxxhdpi。。。
Ps: 除ldpi ,mdpi,hdpi 知道以外,xhdpi本身在前面dip递增80 ; 以上的都是递增 160
1 不能根据分辨率来适配,根据密度(dpi)对应的文件夹来适配;放到对应的目录下,否则会出现小图高分辨上不清晰
(高分辨率适配上 图片要大), 大图放低分辨率上被压缩的时候也会消耗内存。
2 720p(1280*720) ,1080p(1920*1080), 2560*1440 2k
3 一般都是16:9 (1280*720p 1920*1080p 2560*1440 2k);
全面屏幕 出现后,开始有了大概2:1 比例的分辨率,宽都是1080高度不同 (2280*1080 2246*1080 2160*1080)
4 手机 1 2边 分辨率 平方和 2 结果 开平方 得到 斜角线的长度 3 除以 屏幕尺寸(比如 6寸),就是dpi密度
例如: (2160*2160+1080*1080) 开平方后 / 6寸 = 402(华为mete10 pro)
5. 一般都是以ipone 750为比例来设计。。。一般用2x倍的切图。。。
6 px和dp(sp) 之间转化公式,要乘以或者除以scal缩放因子,在浮动0.5f, 而因子是根据系统的屏幕密度density(每英寸多少显示点;scal因子 = displayMetrics实例 获取到densityDpi(160 240 320 480 640) /160 (mdpi的标准160ppi)):
Mdpi 160 是1倍 1px=1dp;hdip 240 是mdpi的1.5倍 1dp=1.5px; xhdpi 320 是mdpi的2倍 ;xxhdpi 480 是mdpi的3倍;xxxhdpi 640 是mdpi的4倍。。
Screen屏幕的高度,包括顶部状态栏 和 底部的操作栏。
Windows窗口的高度,只包括app可视区页面高度。
类似前端js也是一样: scrollHeight 整个页面的滚动高度;clientHeight 可视区高度
!-- p.p1>以上是关于android屏幕密度规律及dp px转换的主要内容,如果未能解决你的问题,请参考以下文章
Android 屏幕适配屏幕适配基础概念 ② ( 像素 px 与 密度无关像素 dip | 像素 px 与 密度无关像素 dip 在不同屏幕像素密度 dpi 下的换算关系 )