㈠ 安卓的布局
安卓的布局就是以下六大基本布局
線性布局
線性布局在開發中使用最多,具有垂直方向與水平方向的布局方式,通過設置屬性「android:orientation」控制方向,屬性值垂直(vertical)和水平(horizontal),默認水平方向。
相對布局可以讓子控制項相對於兄弟控制項或父控制項進行布局,可以設置子控制項相對於兄弟控制項或父控制項進行上下左右對齊。
FrameLayout
幀布局或叫層布局,從屏幕左上角按照層次堆疊方式布局,後面的控制項覆蓋前面的控制項。
絕對布局中將所有的子元素通過設置android:layout_x 和 android:layout_y屬性,將子元素的坐標位置固定下來,即坐標(android:layout_x, android:layout_y) ,layout_x用來表示橫坐標,layout_y用來表示縱坐標。屏幕左上角為坐標(0,0),橫嚮往右為正方,縱嚮往下為正方。實際應用中,這種布局用的比較少,因為Android終端一般機型比較多,各自的屏幕大小。解析度等可能都不一樣,如果用絕對布局,可能導致在有的終端上顯示不全等。
TableLayout
表格布局,適用於多行多列的布局格式,每個TableLayout是由多個TableRow組成,一個TableRow就表示TableLayout中的每一行,這一行可以由多個子元素組弊判成。
GridLayout(網格布明乎局)
作為android 4.0 後新增的一個布局,與前面介紹過的TableLayout(表格布局)其實有租槐改點大同小異;
㈡ Android 常見布局
Android六大基本布局分別是:線性布局LinearLayout、表格布局TableLayout、相對布局RelativeLayout、層布局FrameLayout、絕對布局AbsoluteLayout、網格布局GridLayout。其中,表格布局是線性布局的子類。網格布局是android 4.0後新增的布局。
在手機程序設計中,絕對布局基本上不用,用得相對較多的是線性布局和相對布局。
padding是站在父view的角度描述問題,它規定它裡面的內容必須與這個父view邊界的距離。margin則是站在自己的角度描述問題,規定自己和其他(上下左右)的view之間的距離,如果同一級只有一個view,那麼它的效果基本上就和padding一樣了。
顯示特點:所有子控制項按照橫向或者豎向依次排列
left(左)、right(右)、top(上)、bottom(下)、center(中心)、
enter_vertical(豎向中心)、center_horizontal(橫向中心)
left(左)、right(右)、top(上)、bottom(下)、center(中心)、
enter_vertical(豎向中心)、center_horizontal(橫向中心)
子控制項的用法:android:layout_weight="1" 多個控制項同時使用,可以實現平分的效果
顯示特點:和LinearLayout布局相似,所有子控制項默認顯示在RelativeLayout的左上角
layout_toRightOf 在指定控制項的右邊
layout_toLeftOf 在指定控制項的左邊
layout_above 在指定控制項的上邊
layout_below 在指定控制項的下邊子控制項對齊關系
layout_alignRight 與指定控制項右對齊
layout_alignLeft 與指定控制項左對齊
layout_alignTop 與指定控制項上對齊
layout_centerInParent 與父容器中間對齊 pairunte
layout_centerVertical 與父容器豎向中心對齊
layout_centerHorizontal 與父容器橫向中心對齊
layout_alignParentLeft 與父容器左邊對齊
layout_alignParentTop 與父容器上邊對齊
layout_alignParentRight 與父容器右邊對齊
layout_alignParentBottom 與父容器下邊對齊
顯示特點:所有子控制項默認在GridLayout中橫向依次排列,當只等每行的列數時,到達指定列數
會自動換行顯示。
layout_column 在網格的第幾列
layout_row 在網格的第幾行
layout_columnSpan 跨列
layout_rowSpan 跨行
layout_gravity 在一個網格中的重心位置
columnCount 每行列總數
顯示特點:所有的子控制項默認顯示在FrameLayout的左上角,會重疊在一起顯示。
layout_gravity(設置給子控制項,調整控制項在容器內的重心)
常用值:
left(左)、 right(右)、
top(上)、 bottom(下)、
center(中心)、 center_vertical(豎向中心)
center_horizontal(橫向中心)
表格布局和網格布局類似,但是需要注意的是,表格布局不能跨行,只能跨列
㈢ Android布局居中的幾種做法
比如textView的布局居中,分兩種:
1. 讓孝慧textView里談槐面的內容水平居中 : android:gravity="center_horizontal"
2. 讓textView控制項在它的父含慎友布局裡水平居中 android:layout_gravity="center_horizontal"
㈣ Android中常用的五種布局
Android
布局是應用界面開發的重要一環,在Android中,共有五種布局方式分別是:
線性布局:LinerLayout
表格布局:TableLayout
相對布局:RelativeLayout
絕對布局:AbsoluteLayout
幀布局:FrameLayout
㈤ Android的五大布局
1.RelativeLayout 相對布局
2. LinearLayout 線性布局
3. FrameLayout 幀布局
4.TableLayout 表格布局 (被GridView代替)
5.AbsoluteLayoutf 絕對布局(已經被谷歌廢棄,幾乎不會用到)
相對布局RelativeLayout允許子元素指定它們相對於其父元素或兄弟元素的位置,這是實際布局中最常用的布局方式之一。
特點:相對於其他空間的位置,和相對父元素的位置進行布局;
layout_centerHorizontal(相當於父節點是水平居中)
layout_centerVertical(相當於父節點是垂直居中)
layout_centerInParent(相當於父節點在正中間)
layout_above(在XX之上)
layout_below(在XX之下)
layout_toLeft(在XX的左邊)
layout_toRight(在XX的右邊)
layout_alignParentTop(和父節點的頂部或中穗對齊)
layout_alignParentBottom(和衫卜父節點的底部對齊)
layout_alignParentLeft(和父節點的左邊對齊)
layout_alignParentRight(和父節點的右邊對齊)
layout_alignTop(和XXX頂部對齊)
layout_alignBottom(和XXX底部對齊)
layout_alignLeft (和XXX左邊對齊)
layout_alignRight(和XXX右邊對齊)
線性布局LinearLayout是根據指定朝向orientation水平Horizontal或者垂直Vertical方向排列的布局,其最大的特點是可以給子培肢控制項按照權重weight屬性分配空間.
常見案例:計算器
3. FrameLayout 幀布局
通俗的講就是在屏幕上一層覆蓋著一層的控制項,在fragment中比較常用
<TextView
android:layout_width= "200px"
android:layout_height= "200px"
android:layout_gravity= "center"
android:background= "#00ff00"
android:gravity= "center" />