Android开发中的各种尺度单位

胸怀万里世界, 放眼无限未来。这篇文章主要讲述Android开发中的各种尺度单位相关的知识,希望能为你提供帮助。
px像素(pixel),表示屏幕上一个物理像素点
不建议直接使用 px 绘制UI,因为受像素密度的影响,以 px 为单位绘制的UI在不同手机上显示的实际大小会不同
dp    (用于定义控件大小)【Android开发中的各种尺度单位】密度无关像素。Android 建议使用的一种虚拟像素单位,可以使定义的UI布局在不同像素密度的设备上具有相同的效果。
像素密度dpi = 每英寸长度含有的像素点数量 = 屏幕纵向(横向)长度 / 屏幕纵向(横向)像素数目。
这种密度无关像素尺寸等同于160 dpi 屏幕上的一个物理像素。所以 px = dp * (dpi / 160)
android系统定义了四种像素密度:

名称简称dpi
low ldpi 约120 dpi
medium mdpi 约160 dpi
high hdpi 约240 dpi
extra-high xhdpi 约320 dpi
extra-extra-high xxhdpi 约480 dpi
extra-extra-extra-high xxxdpi 约640 dpi
dipdp 的早期命名,与 dp 完全相同。
sp  (用于定义字体大小)缩放无关像素(scale-independent pixel)。spdp 很类似但区别是,Android 系统允许用户自定义文字尺寸大小(小、正常、大、超大等等),当文字尺寸是“ 正常” 时1sp=1dp,而当文字尺寸是“ 大” 或“ 超大” 时,1sp> 1dp
因此sp主要用于定义字体大小,在用户设置放大字体后,只有用sp为单位的文字被放大。
pt标准长度单位,1pt=1/72英寸=0.035厘米。
in英寸,1英寸=2.54厘米(约)

    推荐阅读