基于density的抽象单位,假设一个160dpi的屏幕,1dp=1px。(160dpi表示1英寸
有160个像素点)
dip:等同于dp。因此我们在xml中使用dp和dip效果一样。
sp:scaled pixels。 同dp相似,但还会依据用户的字体大小偏好缩放。
dpi:dots per inch,每英寸的像素数。
density:通常我们在Android平台提到的这个不是屏幕密度,而是每英寸的像素点与160dpi
(google设置的一个标准)的比值。
densityDpi的值表示每英寸有多少个像素点,单位是dpi。
dip与px的关系:
QVGA densityDpi = 120Density = 0.75 1dp = 0.75px ldpi
HVGA densityDpi = 160 Density = 1 1dp = 1px mdpi
VGA densityDpi = 160Density = 1 1dp = 1px mdpi
WVGA densityDpi = 240Density = 1.5 1dp = 1.5p xhdpiWQVGA densityDpi = 320 Density = 2 1dp = 2px xhdpi
资源目录匹配:
Android默认是使用density来匹配资源的:(尽管Android设备的屏幕像素密度遵循0.75:1.0:1.5:2.0的比例,但市面上有一部分的设备不全然
符合上面的四种情况,有可能介于2者之间:如1.33。这时能够使用drawable-tvdpi目录下的资源。)
原文:http://www.cnblogs.com/mengfanrong/p/5075578.html