Android 基础之布局管理器

来源:互联网 发布:大连董萍 知乎 编辑:程序博客网 时间:2024/05/22 02:26

1.LinearLayout

1). 常用xml属性及方法

android:baselineAligned      setBaseAligned(Boolean)       该属性设为false,将会阻止该布局管理器与它的子元素的基线对齐

android:divider                     setDividerDrawable(Drawable)   设置垂直布局时两个按钮之间的分割条

android:gravity                     setGravity(int)                              设置布局管理器内组件的对齐方式,可以同时指定多种对齐方式组合

android:orientation               setOrientation(int)                   设置布局管理器内组件的排列方式,有水平和垂直两种

其子元素还可以额外指定属性:

android:layout_gravity                                                                   指定该子元素在LinearLayout中的对其方式

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

2).android:orientation="horizontal时,其子元素的android:layout_gravity="right|left" 等控制水平方向的gravity值都是被忽略的,此时LinearLayout中的子元素都是默认的按照水平从左向右来排列,我们可以用android:layout_gravity="top|bottom"gravity值来控制垂直展示。反之,在设置垂直排列后,亦不能使用垂直方面的属性。

2.FrameLayout

1).这个布局中所有的控件都会默认出现在视图的左上角,我们可以使用android:layout_marginandroid:layout_gravity等属性去控制子控件相对布局的位置。


3.RelativeLayout

1).常用XML属性

android:gravity 设置该布局容器内各子组件的对其方式

android:ignoreGravity 设置哪个组件不受gravity属性影响

RelativeLayout.LayoutParams里用来设置子组件的的属性:

android:layout_centerHorizontal 控制该子组件是否位于布局容器的水平居中  

android:layout_centerVertical 控制该子组件是否位于布局容器的垂直

android:layout_centerInParent控制该子组件是否位于布局容器的中央位置 

android:layout_alignParentBottom 控制该子组件是否与布局容器的底端对齐

android:layout_alignParentLeft控制该子组件是否与布局容器的左边对齐

android:layout_alignParentTop控制该子组件是否与布局容器的顶端对齐

android:layout_alignParentRight 控制该子组件是否与布局容器的右边对齐


android:layout_alignBottom 控制该子组件与给出ID组件的下边界对齐

android:layout_alignTop控制该子组件与给出ID组件的上边界对齐

android:layout_alignLeft控制该子组件与给出ID组件的左边界对齐

android:layout_alignRight控制该子组件与给出ID组件的右边界对齐


android:layout_toRightOf控制该子组件位于给出ID组件的右侧

android:layout_toLeftOf控制该子组件位于给出ID组件的左侧

android:layout_above控制该子组件位于给出ID组件的上方

android:layout_below控制该子组件位于给出ID组件的下方

4.GridLayout

1).相关XML属性及方法

android:alignmentMode 设置该布局管理器采用的对其模式

android:columnCount设置网格的列数量

android:rowCount设置网格的行数量

android:useDefaultMargins 设置该布局管理器是否使用默认的页边距

设置子组件的属性:

android:layout_column设置该组件在GridLayout的第几列

android:layout_columnSpan设置该组件在GridLayout横向上跨几列

android:layout_gravity设置该组件采用何种方式占用布局空间

android:layout_row设置该组件在GridLayout的第几行

android:layout_rowSpan设置该组件在GridLayout纵向上跨几行


5.AbsoluteLayout

暂不介绍




 

0 0