安卓布局之類

來源:互聯網
上載者:User

標籤:

安卓的布局:
1.線性布局:按照垂直或者水平的方向布局的組件。
2.相對布局:相對於其他的組件的布局的方式。
3.絕對布局:按照絕對座標來布局的組件。
4.表格版面配置:按照行列方式布局的組件。
5.幀布局:組件從螢幕左上方布局組件。

線性布局:
是安卓開發中間最常用的一種布局方式,他是按照垂直或者水平方向來布局,通過"android:orientation"屬性可以設定成線性布局的方向。屬性值有垂直和水平兩種。
常用屬性:
android:orientation:可以設定布局的方向。
android:gravity:用來控制組件的對其方式。
layout_weight:控制各個組件在布局中的相對大小。
2.相對布局RelativeLayout:
RelativeLayout按照各個子項目之間的位置完成布局。在這個布局中子項目的屬性將生效。例如,android:layout_bwlow和android:layout_ablove等。子項目就通過這些素材和鴿子的ID配合指定位置關係。注意在指定的位置關係時,引用的ID必須在引用之前,先被定義,否則將出現異常。
RelativeLayout裡面常用的屬性如下:
android:layout_toLeftOf位於組件的左邊
android:layout_toRightOf位於組件的右側
android:layout_above該組件位於組件的上方
android:layout_below該組件位於組件的下方
android:layout_alignParentLeft該組件是否對其父組件的左端
android:layout_alignParentRight該組件是否對其父組件的右端
android:layout_alignParentTop該組件是否對其父組件的頂部
android:layout_alignParentBottom該組件是否對其父組件的底部
android:layout_centerInParent該組件是否相對於父組件置中
android:layout_centerHorizontal該組件是否橫向置中
android:layout_centerVertical該組件是否垂直置中

3.絕對布局:AbsoluteLayout:是絕對布局,在這個布局中的子項目的android:layout_x和android:layout_y屬性講生效,用於描述該子項目的座標位置。螢幕左上方為座標原點,第一個0表示橫座標,第二個表示縱座標,向上移動,此值增大。在這個布局中的子項目可以相互重疊。在時機開發中,通常不採用這個布局。因為他的布局代碼過於剛性。不能很好匹配各種終端。
4.表單布局:TableLayout,這個布局就是表單布局,適用於N行N列的布局格式。一個TableLayout由許多的TalbeRow組成,一個TableRow就代表TableLayout中一行。
TableRow是LinearLayout的子類,他的android:orientation屬性值就為horizontal,並且他的android:llayout_wdith和android:layout_height屬性是match_parent和wrap_content。所以他的子項目就是橫向排列,並且寬高是一致的。這樣子的設計使得每一個tableRow裡面的子項目相當於表格的儲存格一樣。在TableRow中,儲存格可以為空白,但是不能跨列。
<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>

</TableRow>
5.幀布局:Framelayout是5個最簡單的一個,在這個布局中,整個介面被當做一個空白的地區來使用,所有的子項目都不能被指定放置的位置,他們統統的放在這個地區的左上方的這個位置。然後將之前的那個元素遮擋住。第二個遮擋住第一個,第三個遮擋住第二個。

 

安卓中的android:layout_width和andoird:layout_height的區別:
1.每一個View必須要定義兩個屬性是layout_width和layout_height,這兩個屬性的值只能在match_parent和wrap_content和fill_parent之間選擇一個。注意:match_parent和fill_parent實際上是一樣的效果,可以在ViewGroup的內部類中間找到定義。均為-1。
2.fill_parent和match_parent這兩種方式是代表view的寬或者高將會和父控制項的寬高相等,wrap_content這種方式代表這個view的寬高將會按照內部的內容來決定。
3.orientation如果是水平方向的話,那麼layout_weight就是水平方向的比例大小,豎直方向的話同理。
4.android:width和android:height的話,即使具有這兩種屬性,也不用聲明。用於控制view的精確大小。如:64dp,1px。在TextView中可以找到這個屬性,但是一般不用。只有在精確定義的時候才會用到。
5.android:gravity這個是針對控制項的元素來說的,用來控制元素在該控制項的顯示位置,例如,在一個button按鈕控制項中設定兩個屬性。
android:gravity="left"和android:text="提交",這個時候button上的文字,android:layout_gravity,用來控制控制項在包含該控制項的斧控制項中的位置,同樣,當我們在button按鈕控制項中設定android:layout_gravity="left"屬性的時候,表示button按鈕講位於介面的左部。

安卓布局之類

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.