安卓界面布局:LinearLayout和RelativeLayout


詳解兩大布局

UI布局給用戶的第一直觀印象,對安卓常用的兩大布局來線性布局和相對布局來進行詳細的認識。

LinearLayout

線性布局

android:orientation:設置線性布局是水平還是豎直排列,可能選項如下:

1)vertical,豎直

android:orientation=”vertical”

2)horizontal,水平

android:orientation=”horizontal”

android:gravity:設置View中內容相對於View組件的對齊方式,比如一個Button內部的Text的位置,與android:layout_gravity有所區分,下一個說layout_gravity:

1)center:在水平和豎直方向上都是居中 center_vertical和center_horizontal可想而知,不贅述

android:gravity=”center”

2)Top和Bottom:置頂與置底

android:gravity=”top”
android:gravity=”bottom”

3)left和right:置左和右

android:gravity=”left”
android:gravity=”right”

android:layout_gravity:設置該View相對於父View的位置關系,就是設置View組件相對於Container的對齊方式,比如一個button在linearlayout里,你想把該button放在靠左、靠右等位置就可以通過該屬性設置:

對於線性布局來說,當orientation為豎直時,該屬性只能設置水平方向上的放置位置,設為center的話,只是水平方向是居中的。

android:layout_marginLeft(Start)/Right(End)/Top/Bottom:調用該屬性對象的本身與其他容器或組件的間隙

android:layout_marginLeft=”…”
…表示間隙大小

android:paddingRight/Left/Top/Bottom:調用該屬性的對象里的內容與該對象本身有填充物占據

android:padding=” …”
…表示間隙大小

android:layout_weight 指定子元素在LinearLayout中所占的權重

此屬性專屬於線性布局,可以按照一定的比例來進行分配

RelativeLayout

相對布局
相對,顧名思義是有參照的,就是以某個兄弟組件,或者父容器來決定的(兄弟組件是在一個同一個布局里面的組件,如果是布局里一個組件參照另一個布局里的組件會出錯)。

android:gravity:設置容器內各個子組件的對齊方式

android:gravity=”…”
…表示對齊方式

android:ignoreGravity:

如果為哪個組件設置了這個屬性的話,那么該組件不受gravity屬性的影響

根據父容器來定位:

想位於哪,哪個屬性就設置為true

左對齊:android:layout_alighParentLeft

右對齊:android:layout_alighParentRight

頂端對齊:android:layout_alighParentTop

底部對齊:android:layout_alighParentBottom

水平居中:android:layout_centerHorizontal

垂直居中:android:layout_centerVertical

中央位置:android:layout_centerInParent

根據兄弟組件來定位(右面的屬性值為兄弟組件的id)

左邊:android:layout_toLeftOf

右邊:android:layout_toRightOf

上方:android:layout_above

下方:android:layout_below

對齊上邊界:android:layout_alignTop

對齊下邊界:android:layout_alignBottom

對齊左邊界:android:layout_alignLeft

對齊右邊界:android:layout_alignRight

Margin:設置組件與父容器(通常是布局)的邊距

android:layout_margin: 指定控件的四周的外部留出一定的邊距

android:layout_marginLeft: 指定控件的左邊的外部留出一定的邊距

android:layout_marginTop: 指定控件的上邊的外部留出一定的邊距

android:layout_marginRight: 指定控件的右邊的外部留出一定的邊距

android:layout_marginBottom: 指定控件的下邊的外部留出一定的邊距

Padding:設置組件內部元素間的邊距(可以理解為填充)

android:padding :指定控件的四周的內部留出一定的邊距

android:paddingLeft: 指定控件的左邊的內部留出一定的邊距

android:paddingTop: 指定控件的上邊的內部留出一定的邊距

android:paddingRight: 指定控件的右邊的內部留出一定的邊距

android:paddingBottom: 指定控件的下邊的內部留出一定的邊距


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com