**LinearLayout、RelativeLayout、GridLayout安卓常用布局**
---------------------------------------------
**LinearLayout**和**RelativeLayout**两种布局继承自view基类,
下面我们就来了解了解他们吧:
**Android中一共有六种布局,**分别是:AbsoluteLayout(绝对布局)、RelativeLayout(相对布局)、LinearLayout(绝对布局)、FrameLayout(帧布局)、TableLayout(变革布局)、GridLayout(4.0后新增的布局))。**目前推荐使用RelativeLayout、LinearLayout、GridLayout三种布局。**
一、LinearLayout:(线性布局)
一)、常用的属性:
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: ignoreGravity="id" 设置布局管理器内哪个控件不受gravity属性的影响
来上图,一览便知:
这里就不一一举例了,来看看下一个吧!
三、GridLayout:网格布局一)、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三种常用布局大概就是这样了!谢谢大家!