Android开发中的各种尺度单位

px

像素(pixel),表示屏幕上一个物理像素点
不建议直接使用 px 绘制UI,因为受像素密度的影响,以 px 为单位绘制的UI在不同手机上显示的实际大小会不同。

dp

密度无关像素。Android 建议使用的一种虚拟像素单位,可以使定义的UI布局在不同像素密度的设备上具有相同的效果。

像素密度dpi = 每英寸长度含有的像素点数量 = 屏幕纵向(横向)长度 / 屏幕纵向(横向)像素数目。

这种密度无关像素尺寸等同于160 dpi 屏幕上的一个物理像素。所以 px = dp * (dpi / 160)

Android系统定义了四种像素密度:

名称简称dpi
lowldpi约120 dpi
mediummdpi约160 dpi
highhdpi约240 dpi
extra-highxhdpi约320 dpi
extra-extra-highxxhdpi约480 dpi
extra-extra-extra-highxxxdpi约640 dpi

dip

dp 的早期命名,与 dp 完全相同。

sp

缩放无关像素(scale-independent pixel)。spdp 很类似但区别是,Android 系统允许用户自定义文字尺寸大小(小、正常、大、超大等等),当文字尺寸是“正常”时1sp=1dp,而当文字尺寸是“大”或“超大”时,1sp>1dp

因此sp主要用于定义字体大小,在用户设置放大字体后,只有用sp为单位的文字被放大。

pt

标准长度单位,1pt=1/72英寸=0.035厘米。

in

英寸,1英寸=2.54厘米(约)

基本用法

文字尺寸用sp为单位,非文字的尺寸用dp作单位。特殊情况使用px单位,例如定义分隔线时使用宽度为1px的细线 。

参考资料:

Android Developer: Supporting Multiple Screens

Android Design

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值