1. dip: device independent pixels(
设备独立像素
).
不同设备有不同的显示效果
,
这个和设备
硬件有关,
一般我们为了支持
WVGA
、
HVGA
和
QVGA
推荐使用这
这个,
不依赖像素。
这里要特别注意
dip
与屏幕密度有关,而屏幕密度又与具体的硬件有关,硬件设置不正
确,有可能导致
dip
不能正常显示。在屏幕密度为
160
的显示屏上,
1dip=1px
,有时候可能
你的屏幕分辨率很大如
480*800
,但是屏幕密度没有正确设置比如说还是
160
,那么这个时
候凡是使用
dip
的都会显示异常,基本都是显示过小。
dip
的换算:
dip
(
value
)
=(int) (px
(
value
)
/1.5 + 0.5)
2. dp:
很简单,和
dip
是一样的。
3. px: pixels(
像素
)
,不同的设备不同的显示屏显示效果是相同的,这是绝对像素,是多少就
永远是多少不会改变。
4.
sp: scaled pixels(
放大像素
).
主要用于字体显示
best for textsize
。
备注
:
根据
google
的推荐,像素统一使用
dip
,字体统一使用
sp
举个例子区别
px
和
dip
:
px
就是像素,如果用
px,
就会用实际像素画,比个如吧,用画一条长度为
240px
的横线,在
480
宽的模拟器上看就是一半的屏宽,而在
320
宽的模拟器上看就是
2
/
3
的屏宽了。
而
dip
,就是把屏幕的高分成
480
分,宽分成
320
分。比如你做一条
160dip
的横线,无论你
在
320
还
480
的模拟器上,都是一半屏的长度。