android开发中像素单位介绍

来源:互联网 发布:蜘蛛源码 编辑:程序博客网 时间:2024/06/05 18:50

       我们在开发android应用的时候,界面布局算得上是开发的第一步。布局就是要设置界面及控件的大小,涉及到好几个像素单位(px,大dip,dp,sp,pt),它们之间有什么区别呢?

     dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这这个,不依赖像素。 dip与屏幕密度有关,而屏幕密度又与硬件有关,硬件设置不一样,有可能导致dip显示也不相同。在屏幕密度为160的显示屏上,1dip=1px,有时候你的屏幕分辨率很大如1024*720,但是屏幕密度没有正确设置比如说还是160,那么这个时候凡是使用dip的都会显示异常,基本都是显示过小。 

      px: pixels(像素),不同的设备不同的显示屏显示效果是相同的,这是绝对像素,是多少就永远是多少不会改变。一般我们界面的分隔线可以用这个设置。

      dip与px换算:  dip(value)=(int) (px(value)/1.5 + 0.5)  

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

         pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用,我们在开发中很少用。

 根据 google 的建议,TextView 的字体大小最好使用 sp 做单位,TextView的源码可知 Android 默认使用 sp 作为字号单位。

0 0
原创粉丝点击