Android单位 dp sp
大小单位
-
px:它是手机屏幕的最小显示单位,与设备的显示屏有关
-
dp:它是与设备无关的显示单位,只与屏幕的尺寸有关
-
sp:它专门用来设置字体大小,在系统设置中可以调整字体大小
名称 解释 px(Pixel像素) 也称为图像元素,是作为图像构成的基本单元,单个像素的大小并不固定,跟随屏幕大小和像素数量的关系变化,一个像素点为1px Resolution(分辨率) 是指屏幕的垂直和水平方向的像素数量,如果分辨率是1920*1080,那就是垂直方向有1920个像素,水平方向有1080个像素 Dpi(像素密度) 是指屏幕上每英寸(1英寸=2.54厘米)距离中有多少个像素点 Density(密度) 是指屏幕上每平方英寸中含有的像素点数量 Dip/dp(设备独立像素) 也可以叫做dp,是长度单位,同一个单位在不同的设备上有不同的显示效果,具体效果与设备的密度有关,详情看下面的计算规则 计算规则
以一个4.95英寸1920*1080的手机设备为例
Dpi:
- 计算斜边(也即是屏幕对角线)像素数量:19202+10802 = 2202^2(勾股定理)
- 计算Dpi:2202/4.95=445
- 得到这个设备的Dpi为445(每英寸距离有445个像素点)
Density
Dip
所有显示到屏幕上的图像都是以px为单位,Dip是我们开发中使用的长度单位,最后它也要转换成px,计算这个设备上1dip等于多少px
px = dip * dpi /160
根据换算关系
320 * 480分辨率,3.6英寸的手机,dpi为160, 1dp=1px
使用dp的好处是可以使相同尺寸的屏幕(即使分辨率不同)上相同dp数值显示的大小相同
浙公网安备 33010602011771号