Android适配之像素

深入理解dip、 dpi、px 、sp

android编程过程中,涉及到支持多种屏幕,也就是通常说的屏幕适配问题。
先来看一下这几个概念对应的英文全称:
dip:density-dependent pixel 密度无关像素
dpi:dot per inch 每英寸(像素)点数
px:pixel 像素
sp:scale pixel 放大像素
另一个概念,per inch=2.45cm
google developer上建议:用布局文件的单位用dip,简写dp;文字用sp;
再来看看:dp和px的关系,dp是怎样做到与像素无关的?
px = dp * (dpi / 160)
从上述关系式不难看出,dp确实是与密度无关的,密度概念被dpi所包含。


举一个具体的例子:

MX3(魅族3):
屏幕分辨率 1800X1080
整机尺寸:139.0*71mm
屏幕尺寸:115mm*69.2mm
长4.53inch,宽*2.72inch,屏幕尺寸5.1inch
由dpi概念可知:MX3约为397dpi,属于XHDPI。
The density buckets:
LDPI(120dpi), MDPI(160dpi), HDPI(240dpi), XHDPI(320), XXHDPI(480dpi), and XXXHDPI(640dpi).
这里写图片描述

综上可知,dp与屏幕密度无关,布局文件中以dp为单位,在不同分辨率的手机屏幕上,被转换成相应的px,相应的放大或缩小,达到对不同屏幕分辨率的适配效果。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值