使用者最直接面對的就是UI
所以UI一定要學好
這篇就先從單位開始介紹
1. 在官網http://developer.android.com/guide/topics/resources/more-resources.html
裡有提到Dimension(尺寸)的說明, 他在Android -> Resource Type -> More Type裡
以下就介紹其單位
px : pixel, 也就是像素, 代表的是螢幕上確切可顯示的點數,
例如在 解析度480x800的手機, 就是寬480個px, 長800個px,
在解析度相同的5.5吋和4吋的螢幕上,
就可以發現5.5上的每一個pixel相對較大
in : inches 英吋, 1英吋等於2.54公分, 就是尺量出來那樣
pt : Points 點or磅, 源自印刷單位, 72pt等於一英吋
mm : Millimeters 毫米, 也就是0.1公分, 就是尺量出來那樣
dpi : dots per inch, 每一英吋內有多少個像素, 數字越大螢幕看起來會越精細
是一種密度單位, 也有人稱做 螢幕單位密度
dip : 和dp是一樣的單位, 可以使用, 偶爾會在文件上看到
dp : density-independent pixels, 他是一種抽象的單位,
硬要翻的話可以稱做密度獨立像素, 官方推薦像素使用dp,
簡單來說他是一種會根據不同營幕自行轉換的單位, 舉例來說
如果螢幕密度是 一英吋有160個像素, 也就是160dpi, 那此時1dp就代表1px,
那如果螢幕密度是 320dpi, 那此時1dp就代表2px
所以
1 dp = (螢幕密度dpi / 160 dpi) 個 像素
然後有個公式說明對應關係
px = dp * dpi / 160
sp : Scale-independent Pixels, 和dp一樣是抽象單位,
硬要翻的話可以稱做比率獨立像素, 官方推薦在字體上使用,
如果螢幕密度是 是160dpi, 那此時1sp就代表1pt,
那如果螢幕密度是 320dpi, 那此時1sp就代表0.5pt
然後有個公式說明對應關係
sp = pt * dpi / 160