px
即像素,
1px
代表屏幕上一个物理的像素点
- 由于像素密度不同,同样
100px
的图片,在不同手机上显示的实际大小可能不同
DPI
像素密度的单位
dpi
是Dots Per Inch
的缩写,即每英寸像素数量
Android
系统定义了四种像素密度:低(120dpi)、中(160dpi)、高(240dpi)和超高(320dpi)- 它们对应的
dp
到px
的系数分别为 0.75、1、1.5 和 2,这个系数乘以dp
长度就是像素数px
dp(dip)
Density independent pixels
,设备无关像素
dp
与dip
完全相同,只是名字不同而已。在早期的Android
版本里多使用dip
,后来为了与sp
统一就建议使用dp
这个名字了dp
与px
换算公式如下:dp = (DPI/160) px
为什么使用 160dpi
作为标准
- 因为第一款
Android
设备(HTC的T-Mobile G1)是属于160dpi
的 - 方便换算,其余三个分别是
160dpi
的0.75、1.5、2
倍,若使用240dpi
则会出现无限小数