单位辨析dp px sp

px:实际的物理像素点,比如我们常说的分辨率480x800说的就是像素点(一个像素点的实际尺寸是与图片大小和分辨率相关的)

dp:dp是一个与像素密度(dpi)相关的单位,与dip一样
  所谓像素密度(dots per inch)就是每英寸的像素点个数,有些横向和纵向的像素密度是不一样的,但是现在大多数的手机都是正方形像素,所以横向和纵向的像素密度是相同的。下面是其算法:

w和h分别对应分辨率480x800中的两个数,l为手机的对角线尺寸,单位为英寸。
下面是dp与px实际像素的转换公式:

例如:若设备的初始密度为160,在xml中设置尺寸为20dp,则计算出的实际像素为20*(160/160)=20px。

  每部android手机都有固定的初始密度,密度值如下120、160、240、320、480.这我们称为系统密度,而我们自己通过上式计算出的密度dpi称为实际密度。如果计算过实际密度的都知道,计算出的实际密度不一定都等于系统密度,但系统在进行屏幕适配时会按照实际密度匹配适合的系统密度进行适配。正如下图,一般240X320的屏幕初始密度为120,320X480屏幕为160,其余以此类推。
在这里插入图片描述

sp:scale-independent pixels(缩放独立像素),它和dp相似,但是android允许用户自定义文字的尺寸大小(小,正常,大,超大等),当文字尺寸是正常时,1sp=1dp=0.00625inch=0.015875cm,当文字为大和超大时,1sp>1dp=0.00625inch。(1inch = 0.0254m =2.54cm)
sp一般用于文字尺寸大小,它会随着设备文字大小改变而改变。不再像dp,同样的dp尺寸在各个设备中显示的实际大小基本相同。

总结:一般情况下文字尺寸采用sp单位,其余用dp为单位

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值