android学习笔记18——dpi、dp、sp、xp......

参考:http://www.cnblogs.com/greatverve/archive/2011/12/28/android-dip-dp-sp-pt-px.html

     http://www.360doc.com/content/15/0713/09/26211242_484580697.shtml

文章内容仅供参考

dpi==>device independent pixels(设备独立像素),不同设备有不同的显示效果,这个和设备硬件有关;

    一般为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素;

    dpi,也可以理解为每英寸上的像素点——表示屏幕像素的密度,单位是dpi;  

    举例说明:

      即密度无关像素,以160dpi为基准,1dip=1px

      举例:

      设备1:分辨率是480*320,像素密度是160dpi

      设备2:分辨率是800*480,像素密度是240dpi

      设备1中,1dip=1px,设备2中1dip=240/160px

 

dp==>等价于dpi

 

sp==>scale_independent pixels,可以根据文字大小首选项进行放缩,Google推荐尽量使用12sp以上的单位,不然可能会让用户看不清楚;

   推荐使用12sp,14sp,18sp,22sp,尽量不要使用奇数和小数,因为放缩的时候可能造成精度丢失。

 

xp==>构成图像的最小单位,pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多;

 

pt==> point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用;

 

sp: scaled pixels(放大像素). 主要用于字体显示best for textsize

 

in(英寸)==>长度单位;

 

mm(毫米)==>长度单位;

 

分辨率==>是指整个屏幕是多少点,Eg:800*480,它是对于软件来说的显示单位,以PX为单位的点,density(密度)值表示每英寸有多少个显示点,与分辨率是两个概念。

      当屏幕的density=240时——使用hdpi标签的资源;

        当屏幕的density=160时——使用mdpi标签的资源;

      当屏幕的density=120时——使用ldpi标签的资源; 

 

注意:android中一般设置长度、宽度——使用dpi做单位;——在屏幕密度为160时,1pd=1px=1dpi ,1pt=160/72英寸,当屏幕为240时,1dp=1dpi=1.5px

     设置字体大小——使用sp;

 

转载于:https://www.cnblogs.com/YYkun/p/5782822.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值