dip px:显示单位px和dip以及sp的区别

dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA cwj推荐使用这个,不依赖像素。
px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。
pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用;
sp: scaled pixels(放大像素). 主要用于字体显示best for textsize。
由此,根据 google 的建议,TextView 的字号最好使用 sp 做单位,而且查看
TextView
的源码可知 Android 默认使用 sp 作为字号单位。
###################################################################
关于换算(以 sp 和 pt 为例)
查看 TextView 等类的源码,可知:
case COMPLEX_UNIT_PX:
   return value;
case COMPLEX_UNIT_SP:
   return value * metrics.scaledDensity;
case COMPLEX_UNIT_PT:
   return value * metrics.xdpi * (1.0f/72);
--------------------------
scaledDensity = DENSITY_DEVICE / (float) DENSITY_DEFAULT;
xdpi = DENSITY_DEVICE;
--------------------------
DENSITY_DEFAULT = DENSITY_MEDIUM = 160;
============================================
所以: 假设 pt 和 sp 取相同的值 1,则可设 1pt 和 1sp 之间系数为 x,
1 * DENSITY_DEVICE / 72 = x * 1 * DENSITY_DEVICE / 160   =>
x = 160 / 72 = 2.2222
也就是说在 Android 中,   1pt 大概等于 2.22sp
以上供参考,如果 UI 能够以 sp 为单位提供设计是最好的,如果设计中没有 sp
的概念,则开发人员也可以通过适当的换算取近似值。

本文链接http://www.cxybl.com/html/wyzz/CSS/20120614/30134.html

时间: 2024-10-28 16:06:15

dip px:显示单位px和dip以及sp的区别的相关文章

分享Android上dip、dp、px、sp等单位详解

[ dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和QVGA 推荐使用这个,不依赖像素. px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多. pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用: sp: scaled pixels(放大像素). 主要用于字体显示best for text

Android dip,px,pt,sp 的区别详解_Android

dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和QVGA 推荐使用这个,不依赖像素. px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多.pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用:sp: scaled pixels(放大像素). 主要用于字体显示best for textsize

Android计量单位px,in,mm,pt,dp,dip,sp和获取屏幕尺寸与密度

###########################################Android计量单位########################################### px   :是屏幕的像素点 in    :英寸 mm :毫米 pt    :磅,1/72 英寸 dp   :一个基于density的抽象单位,如果一个160dpi的屏幕,1dp=1px dip  :等同于dp sp   :同dp相似,但还会根据用户的字体大小偏好来缩放.建议使用sp作为文本的单位,其它用

我的Android进阶之旅------>Android常用计量单位(Dimension)的介绍(px,in,mm,pt,dp,dip,sp)

在Android开发中常用到px,in,mm,pt,dp,dip,sp这几个单位,你可不要混淆了 摘自:http://developer.android.com/guide/topics/resources/more-resources.html#Dimension的一段简介 Dimension A dimension value defined in XML. A dimension is specified with a number followed by a unit of measur

Android dip,px,pt,sp 的区别详解

dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和QVGA 推荐使用这个,不依赖像素. px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多.pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用:sp: scaled pixels(放大像素). 主要用于字体显示best for textsize

CSS网页制作教程:CSS文字单位PX、EM、PT

文章简介:但是12px汉字例外,就是由以上方法得到的12px(1.2em)大小的汉字在IE中并不等于直接用12px定义的字体大小,而是稍大一点.这个问题 Jorux已经解决,只需在body选择器中把62.5%换成63%就能正常显示了.原因可能是IE处理汉字时,对于浮点的取值精确度有限.不知道有没有 其 这里引用的是Jorux的"95%的中国网站需要重写CSS"的文章, 题目有点吓人,但是确实是现在国内网页制作方面的一些缺陷.我一直也搞不清楚px与em之间的关系和特点,看过以后确实收获很

CSS文字大小单位PX、EM、PT

  这里引用的是Jorux的"95%的中国网站需要重写CSS"的文章, 题目有点吓人,但是确实是现在国内网页制作方面的一些缺陷.我一直也搞不清楚px与em之间的关系和特点,看过以后确实收获很大.平时都是用px来定义字 体,所以无法用浏览器字体放大的功能,而国外大多数网站都可以在IE下使用.因为: 1. IE无法调整那些使用px作为单位的字体大小; 2. 国外的大部分网站能够调整的原因在于其使用了em作为字体单位; 3. Firefox能够调整px和em,但是96%以上的中国网民使用IE

css文字大小单位px、pt、em 使用说明

老是被人问到px.pt和em的区别,自己有时候也会纠结到底该用什么单位,今天特意查了一些文章,下面这篇虽然很久远了,但解释的比较全面,转载收藏之.点击查看原文 这里引用的是Jorux的"95%的中国网站需要重写CSS"的文章,题目有点吓人,但是确实是现在国内网页制作方面的一些缺陷.我一直也搞不清楚px与em之间的关系和特点,看过以后确实收获很大.平时都是用px来定义字体,所以无法用浏览器字体放大的功能,而国外大多数网站都可以在IE下使用.因为: 1. IE无法调整那些使用px作为单位的

css中单位px和em的区别

px像素(pixel)相对长度单位是相对于显示器屏幕分辨率而言的(引自css教程2.0手册). em相对长度单位是相对于当前对象内文本的字体尺寸而言的,如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸(引自css2.0手册). 任意浏览器的默认字体高都是16px.所有未经调整的浏览器都符合: 1em=16px.那么12px=0.75em.10px=0.625em.为了简化font-size的换算,需要在css中的body选择器中声明font-size=62.5%,这就使em值