牛骨文教育服务平台(让学习变的简单)

一、LinearLayout(线性布局)

常用属性:
A. android:orientation="vertical"   或者  android:orientation="horizontal" ——决定子类控件垂直或者水平排布
B. android:gravity  =  "center_horizontal  |  bottom" ——决定子类控件的X、Y位置 center:垂直水平都居中right(右)、left(左)、bottom(下面)
center_vertical:垂直(Y轴)居中
center_horizontal:水平(X轴)居中
C. android:layout_gravity="bottom"     ——指的是子控件本身在当前父容器的X、Y位置
android:layout_weight="1" ——指的是子控件本身占当前父容器的一个比例(wrap_content正比、match_parent反比)
注意:即使设置了也不一定起作用。比如:水平的LinearLayout要从左边开始依次放置布局,所以设置TextView的layout_gravity属性为right也不起作用。

二、RelativeLayout(相对布局)

常用属性:(align 系列、margin系列、center系列)

(1)以下属性是 子类控件 相对于 父类(RelativeLayout)的)

(2)以下属性是 子类控件 相对于 子类控件的

三、FrameLayout(帧布局)

在这个布局中,所有的子元素都不能被指定防止的位置,它们统统放于这块区域的左上角,并且后面的子元素直接覆盖在前面的子元素之上,将前面的子元素部分和全部遮挡。

A.使用android:foreground——设置前景图,在所有子图的前面;
B.使用android:background——设置背景
C.使用android:keepScreenOn——保持屏幕唤醒
D.使用android:foregroundGravity——设置前景图的位置

四、AbsoluteLayout(绝对布局)

又可以称为坐标布局,可以直接指定子元素的 绝对位置(X、Y)。——由于手机屏幕尺寸差别较大,在屏幕的适配上有缺陷。所以很少用到。

android:layout_x="30dp"    ——控制当前子控件的X位置
android:layout_y="29dp"    ——控制当前子控件的Y位置

五、TableLayout(表格布局)

表格布局模型以行列的形式管理子控件,每一行为一个 TableRow 的对象,当然也可以是一个 View 的对象。索引从 0 开始。