Android中的长度单位详解
http://blog.csdn.net/zuolongsnail/article/details/6397768
in(英寸)長度單位(基本用不到)
mm(毫米)長度單位(基本用不到)
pt(point磅)1/72英寸,標準的長度單位(基本用不到)
?
px(pixel像素)指的是屏幕上的點
dp(與密度無關的像素)一種基于屏幕密度的抽象單位。在每英寸160點的顯示器上,1dp=1px
dip(device independent pixels設備獨立像素) 不同設備有不同的顯示效果,這個和設備硬件有關。
sp(scaled pixels放大像素)與dp類似,主要用于字體顯示(best for textsize)
?
dip和px的區別及其轉換
區別:
在DisplayMetrics.densityDpi=160的設備上,DisplayMetrics.density是等于1.0的(通過查看DisplayMetrics的SDK源代碼得知),此時1dip=1px。但是換到其他不同density的設備上,dip和px的大小就不一樣了,px在任何密度的設備上幾何長度都是一樣的,而dip會根據設備密度變化的。所以在開發中布局時盡量使用dip而少使用px。dpi表示每英寸像素數,讀者可以參考這篇文章:(hdpi,mdpi,ldpi)和WVGA,HVGA,QVGA的區別以及聯系。
轉換:
dip和px之間的轉換很簡單,下面是dip和px的工具類。
[java]?view plaincopy
- Screen size (屏幕尺寸):具體的屏幕物理長度,以對角線長度做為標識,平時我們說的3”屏,7”屏就是指這個,是物理尺寸
- Resolution (分辨率):屏幕上總共的物理像素點,雖然經常被以800X600之類的來描述,但是在android中,他并不指代具體的屏幕寬高比例,注意,分辨率和屏幕大小沒有任何聯系,分辨率只是描述點的而已,所以相同分辨率下,屏幕越小,越清晰
- density(密度) :表示每英寸有多少個顯示點,density是以分辨率為基礎,即指在固定分辨率上散開的像素點,也即是說屏幕的density越大,單位上分散的像素就越多,可以理解為點距就越小,這樣如果某個元素是以px為單位的,那么在低密度的屏幕上就會變大,應用程序可以通過指定high-dpi等三種資源來實現平臺的獨立性
- 另外和android平臺相關的還有的概念:
- ASPECT RATIO (寬高比例):也就是平時我們說的4比3之流
- Density-independent pixel(dip):dip是一種虛擬的像素單位,專門用來給程序定義UI用,Android高度推薦使用這個,可以為不同的dip設置不同的資源進行自動切換 pixels = dips * (density / 160)即dip相當于屏幕density=160時的一個像素點,density=160時是一個點顯示一個像素,而density=240時是3個點顯示兩個像素,圖像看起來大一些,真實像素只有1280*2/3px,800*2/3px。
- (同一寬度(2英寸)的屏幕,但是一個像素數是360,density = 160,另一個屏幕的像素是720,density=360;如果要畫160dip的線條,對于第一個屏幕就是劃了160個像素,占屏幕一般,第二個屏幕就是劃了320個像素,也占屏幕的一半)
- Dot per inch(DPI) : 就是一英寸上顯示的點,而這個點并不是意義上的像素。 一般來說,顯示器是96DPI,也就是說96像素等于1inch,但實際上不應該是這樣,因為顯示器的分辨率可以調整。 對于你上面所說的顯示器設置,96DPI可以理解為用96象素來表示一英寸,而變成120DPI的時候,是用120像素來表示一英寸,而系統的對象(字體,圖像)的是用英寸數來表示的,所以120DPI時,圖象和字體就變大了。
就是一英寸上顯示的點,而這個點并不是意義上的像素。?一般來說,顯示器是96DPI,也就是說96像素等于1inch,但實際上不應該是這樣,因為顯示器的分辨率可以調整。
對于你上面所說的顯示器設置,96DPI可以理解為用96象素來表示一英寸,而變成120DPI的時候,是用120像素來表示一英寸,而系統的對象(字體,圖像)的是用英寸數來表示的,所以120DPI時,圖象和字體就變大了。 - 色階 :也就是平時我們說的 65536色,26萬色,1600萬色并沒有數字看起來差別那么大,這實際上只是表示相鄰的三個色階而已,當然,1600萬色顯示效果是最好的
總結
以上是生活随笔為你收集整理的Android中的长度单位详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 巧用linux服务器下的/dev/shm
- 下一篇: AndroidStudio常用快捷键及其