android-長度單位-解析

介紹

in(英寸)長度單位(基本用不到)
mm(毫米)長度單位(基本用不到)
pt(point磅)1/72英寸,標準的長度單位(基本用不到)

 

px(pixel像素)指的是屏幕上的點
dp(與密度無關的像素)一種基於屏幕密度的抽象單位。在每英寸160點的顯示器上,1dp=1px
dip(device independent pixels設備獨立像素) 不同設備有不同的顯示效果,這個和設備硬件有關。
sp(scaled pixels放大像素)與dp類似,主要用於字體顯示(best for textsize)


詳解

dpi(dot per inch):用來描述屏幕密度,如:屏幕密度爲160則意味着每1英寸上有160個顯示點。 



in(inch):表示英寸,是屏幕的物理尺寸。每英寸等於2.54 釐米。例如,形容手機屏幕大小,經常說,3.2(英)寸、3.5(英)寸、4(英)寸就是指這個單位。這些尺寸是屏幕的對角線長度。如果手機的屏幕是3.2 英寸,表示手機的屏幕(可視區域)對角線長度是3.2*2.54 = 8.128 釐米。


mm:表示毫米,是屏幕的物理尺寸。 
pt:表示一個點,是屏幕的物理尺寸。pt全稱爲point,但中文不叫“點”,查英語字典可以看到,確切的說法是一個專用的印刷單位“磅”,大小爲1/72英寸。所以它是一個自然界標準的長度單位,也稱爲“絕對長度”。1in = 2.54cm = 25.4 mm = 72pt = 6pc。


px(pixel):表示屏幕實際的象素。例如,320*480 的屏幕在橫向有320個象素,在縱向有480 個象素。如果使用px 作單位,假設屏幕大小不變(還是3.2 寸),屏幕初始密度爲160,而現在屏幕密度變成了320。那麼原來TextView 的寬度設成160px,在密度爲320 的3.2 寸屏幕裏看要比在密度爲160 的3.2 寸屏幕上看短了一半。 


dip或dp:(device independent pixels,設備獨立像素),一般爲了支持WVGA、HVGA和QVGA使用這個,不依賴像素。這裏要特別注意dip與屏幕密度dpi有關,而屏幕密度又與具體的硬件有關,硬件設置不正確,有可能導致屏幕密度dpi不能正常顯示。在屏幕密度dpi爲160的顯示屏上,1dip=1px,有時候可能你的屏幕分辨率很大如480*800,但是dpi 沒有正確設置比如說還是160,那麼這個時候凡是使用dip的都會顯示異常,基本都是顯示過小。dip的換算:1dip = 1px*scaledDensity。


sp(Scaled Pixels):主要用於字體顯示,與刻度無關的一種像素,與dp類似,但是可以根據用戶的字體大小首選項進行縮放。在dpi爲160的設備上,1sp=1px;在dpi不爲160的設備上,1sp=1px*(current DPI)/160。


爲了使用戶界面能夠在現在和將來的顯示器類型上正常顯示,建議大家始終使用sp作爲文字大小的單位,將dip作爲其他元素的的單位。

發佈了6 篇原創文章 · 獲贊 2 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章