189 8069 5689

android中布局,Android中布局的特点

android布局属性详解

表格布局,适用于多行多列的布局格式,每个TableLayout是由多个 TableRow 组成,一个 TableRow 就表示 TableLayout 中的每一行,这一行可以由多个子元素组成。实际上 TableLayout 和 TableRow 都是 LineLayout 线性布局的子类。但是 TableRow 的参数 android rientation 属性值固定为 horizontal ,且 android:layout_width=MATCH_PARENT , android:layout_height=WRAP_CONTENT 。所以 TableRow 实际是一个横向的线性布局,且所以子元素宽度和高度一致。

合水网站制作公司哪家好,找成都创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设等网站项目制作,到程序开发,运营维护。成都创新互联于2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联

注意: 在 TableLayout 中,单元格可以为空,但是不能跨列,意思是只能不能有相邻的单元格为空.

在 TableLayout 布局中,一列的宽度由该列中最宽的那个单元格指定,而该表格的宽度由父容器指定。可以为每一列设置以下属性:

RelativeLayout 继承于 android.widget.ViewGroup ,其按照子元素之间的位置关系完成布局的,作为 Android 系统五大布局中最灵活也是最常用的一种布局方式,非常适合于一些比较复杂的界面设计。

注意:在引用其他子元素之前,引用的 ID 必须已经存在,否则将出现异常。

将所有的子元素放在整个界面的左上角,后面的子元素直接覆盖前面的子元素,所以用的比较少。

绝对布局中将所有的子元素通过设置 android:layout_x 和 android:layout_y 属性,将子元素的坐标位置固定下来,即坐标( android:layout_x , android:layout_y ) , layout_x 用来表示横坐标, layout_y 用来表示纵坐标。 屏幕左上角为坐标(0,0),横向往右为正方,纵向往下为正方。实际应用中,这种布局用的比较少,因为 Android 终端一般机型比较多,各自的屏幕大小。分辨率等可能都不一样,如果用绝对布局,可能导致在有的终端上显示不全等。

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 Studio 中的布局

在Android Studio中的布局共有6种布局(已知):

只能在LinearLayout中实现,

父类添加orientation属性(horizontal水平排列 | Vertical垂直排序),

在子类中添加权重layout_weight 数字越大,占比越大。

相对于父容器 (居中):水平居中android:layout_centerHorizontal

完全居中android:layout_centerInParent

垂直居中android:layout_centerVertical

对齐:与父容器左边界对齐:android:layout alignParentLeft

    与父容器右边界对齐:android:layout alignParentRight

       与父容器的顶部对齐android:layout_alignParentTop

       与父容器的底部对齐android:layout_alignParentBottom

相对于兄弟视图控件: (位置):  显示在ID为but_id的左侧android:layout_toLeftOf

    显示在ID为but_id的右侧android:layout_toRightOf

       显示在ID为but_id的上方android:layout_above

    显示在ID为but_id的下方android:layout_below

        对齐:    与ID为but_id的左侧对齐android:layout_alignLeft

    与ID为but_id的右侧对齐android:layout_alignRight

                    与ID为but_id的顶部对齐android:layout_alignTop

                    与ID为but_id的底部对齐android:layout_alignBottom

3、绝对布局

只能在AbsoluteLayout中使用,再要操作的类中使用android:layout_y,android:layout_x

4、帧布局

只能在FrameLayout中使用,使用 View(并列),可以大套小

5、表格布局

在TableLayout类中使用TableRow(行),Button(格)在其TableRow(行)中。

6、网格布局

在GridLayout类中使用Button直接写入,

在类属性中添加android:rowCount="5"(5行),或android:columnCount="4"(4列)

在常见的网页中大部分为线性布局


分享名称:android中布局,Android中布局的特点
URL标题:http://cdxtjz.cn/article/hocopd.html

其他资讯