LinearLayout、RelativeLayout、GridLayout目前安卓常用的三種佈局
阿新 • • 發佈:2018-12-23
**LinearLayout、RelativeLayout、GridLayout安卓常用佈局**
---------------------------------------------
**LinearLayout**和**RelativeLayout**兩種佈局繼承自view基類,
下面我們就來了解了解他們吧:
**Android中一共有六種佈局,**分別是:AbsoluteLayout(絕對佈局)、RelativeLayout(相對佈局)、LinearLayout(絕對佈局)、FrameLayout(幀佈局)、TableLayout(變革佈局)、GridLayout(4.0後新增的佈局))。**目前推薦使用RelativeLayout、LinearLayout、GridLayout三種佈局。**
一、LinearLayout:(線性佈局)
一)、常用的屬性:
1、orientation,元件的**排列方式**,有vertical (垂直)、horizontal(水平)兩種佈局方式;2、gravity, 佈局管理器內元件的**對齊方式**; 該屬性用來控制該View的內容物的位置,一般是控制文字的位置,有:top、bottom、left、right、center_vertical、fill_vertical 、center、fill等選項;
3、weightSum,定義weight綜合的最大值,如果未指定該值,則將layout_weight屬性的累加值作為總和;
二)、 LinearLayout 子元素的特有屬性:
1、android:layout_weight 子元素在 LinearLayout 中所佔的權重
2、android:layout_gravity 子元素在 LinearLayout 中的對齊方式 下面我們就試試看吧:
來寫一個的demo:
二、RelativeLayout:(相對佈局) 一)、相對佈局的概念:指按著控制元件之間的相對位置來進行佈局。二)、RelativeLayout特有屬性:1、android:gravity 設定佈局容器內子控制元件的對齊方式2、android:這裡就不一一舉例了,來看看下一個吧! 三、GridLayout:網格佈局ignoreGravity="id" 設定佈局管理器內哪個控制元件不受gravity屬性的影響 來上圖,一覽便知:
一)、GridLayout佈局屬性:1、android:alignmentMode:設定佈局的對齊模式。可以取以下值:alignBounds -- 對齊子檢視邊界。alignMargins -- 對齊子檢視邊距。2、android:columnCount:GridLayout的最大列數3、android:rowCount:GridLayout的最大行數4、android:orientation:GridLayout中子元素的佈局方向。5、android:columnOrderPreserved: 設定該網格佈局是否保留列序號。預設是true。6、android:rowOrderPreserved: 設定該網格佈局是否保留行序號。預設是true。7、android:useDefaultMargins: 設定GridLayout使用預設的邊距。預設值是false。二)、GridLayout子元素的屬性:1、android:layout_column: 顯示該控制元件的列。例如,android:layout_column="0",表示在第1列顯示該控制元件;2、android:layout_row: 該控制元件所在行。例如,android:layout_row="0",表示在第1行顯示該控制元件;3、android:layout_columnSpan: 列合併。即該控制元件所佔的列數。例如,android:layout_columnSpan="2";4、android:layout_rowSpan: 行合併。即該控制元件所佔的行數。例如,android:layout_rowSpan="2";
三)、上機試試:
好了,Android三種常用佈局大概就是這樣了!謝謝大家!