android 學習 之 布局(上)

2021-09-08 10:29:25 字數 1505 閱讀 8529

學習安卓布局前,先了解三個屬性值:

1、fill_parent:

設定乙個構件的布局為fill_parent將強制性地使構件擴充套件,以填充布局單元內盡可能多的空間

2、match_parent:

android2.2中match_parent和fill_parent是乙個意思 .兩個引數意思一樣,match_parent更貼切,

於是從2.2開始兩個詞都可以用。那麼如果考慮低版本的使用情況你就需要用fill_parent了

3、wrap_content:

設定乙個檢視的尺寸為wrap_content將強制性地使檢視擴充套件以顯示全部內容。

安卓的單位區別:

px:

px即畫素,1px即代表螢幕上的乙個物理畫素點。px單位不建議使用

dp:

在介紹這個單位之前,首先我們來了解一下畫素密度。假設有一部手機,螢幕的物理尺寸為1.5英吋x2英吋,螢幕解析度為240x320,則我們可以計算出在這部手機的螢幕上,每英吋包含的畫素點的數量為240/1.5=160dpi(橫向)或320/2=160dpi(縱向),160dpi就是這部手機的畫素密度,畫素密度的單位dpi是dots per inch的縮寫,即每英吋畫素數量。橫向和縱向的這個值都是相同的,原因是大部分手機螢幕使用正方形的畫素點。

不同的手機/平板可能具有不同的畫素密度。android系統定義了幾種畫素密度:低(120dpi)、中(160dpi)、高(240dpi)、超高(320dpi)、超超高(480dpi)、超超超高(640dpi),它們對應的dp到px的係數分別為0.75、1、1.5、2、3、4,這個係數乘以dp長度就是畫素數。例如介面上有乙個長度為「100dp」的,那麼它在240dpi的手機上實際顯示為100x1.5=150px,在320dpi的手機上實際顯示為100x2=200px。如果你拿這兩部手機放在一起對比,會發現這個的物理尺寸「差不多」,這就是使用dp作為單位的效果。

dip:

dip和dp完全相同,只是名字不同而已。在早期的android版本裡面多使用dip,後來為了和sp統一起來建議使用dp。

sp:

sp和dp類似,但是有乙個唯一的不同點:

android系統允許使用者自定義字型大小(小,正常,大,超大等等),當大小為「正常」時1sp = 1dp = 0.00625英吋,而當大小為「大」或「超大」時,1sp > 1dp = 0.00625英吋。類似我們在windows裡調整字型尺寸以後的效果——視窗大小不變,只有文字大小改變。

使用場合:

谷歌的官方文件建議:

文字的尺寸一律用sp單位,非文字的尺寸一律使用dp單位。例如textsize="16sp"、layout_width="60dp"

偶爾需要使用px單位,例如需要在螢幕上畫一條細的分隔線時:

Android學習筆記之布局2

android功能強大,介面華麗,但是眾多的布局屬性就害苦了開發者,下面這篇文章結合了網上不少資料,花費本人乙個下午搞出來的,希望對其他人有用。第一類 屬性值為true或false android layout centerhrizontal 水平居中 android layout centerve...

Android布局學習

習慣了delphi vb等rad的拖放布局,使用android的布局管理器還真不習慣.例如要實現下面的介面布局 則需要如下設定 12 android layout width wrap content 3 android layout height wrap content 4 android or...

Android學習 布局

linearlayout 線性布局 relativelayout 相對布局 tablelayout 布局 framelayout 幀布局 absolutelayout 絕對布局 gridlayout 網格布局 weight 權重 屬性詳解 實現 實現效果 按比例劃分水平方向 將涉及到的view的an...