Skip to content
阅读进度

Android 中常见的屏幕密度分类有哪些?对应的 dp 到 px 换算比例是多少? ​

返回 兼容与平台扩展 目录

标准回答 ​

常见密度桶为 ldpi 120dpi、mdpi 160dpi、hdpi 240dpi、xhdpi 320dpi、xxhdpi 480dpi、xxxhdpi 640dpi,1dp 分别约等于 0.75、1、1.5、2、3、4px。通用公式是 px = dp × densityDpi / 160,实际计算使用设备当前配置密度。

通俗例子 ​

px = dp × density;在 density=3 的设备上,20dp 对应约 60px。常见密度档只帮助理解,实际值不一定恰好等于某个整数档。

深入解释 ​

**dp 与 px 的关系:**px 是实际像素,dp 是便于跨密度设计的逻辑尺寸,常用换算为 px = dp × density,density 与系统配置的密度有关。

**分辨率为什么不能代替密度:**两块屏幕都可能是 1920×1080,却有不同物理尺寸和系统 density。只按像素数量放控件,实际看到的控件大小可能差很多。

易混淆点 ​

多显示器的密度可能不同,不应全局缓存一份主屏 density 到处使用。

内容来源 ​

用完整回答理解机制,用真实证据解释项目。