LinearLayout
(线性布局)
定义:
LinearLayout是线性布局控件,它包含的子控件将以横向或者竖向的方式排列
LinearnLayout本身常用到的两个属性:
1:
android:orientation=”vertical”/”horizontal”(这个属性决定他子类控件的排布方式 垂直/水平)
2:
android:gravity=”center”
(这个属性决定他子类的xy的位置)
经常用到的几个属性值:
center_vertical:垂直(Y轴)居中
center_horizontal:水平(x轴)居中
center(水平垂直都居中)
right(子类控件位于当前布局的右边)
left(子类控件位于当前布局的左边)
bottom(子类控件位于当前布局的下面)
gravity属性是可以多级连用的:
android:gravity=”bottom/center_horizontal”
gravity属性设置在linearLayout中表示当前布局或者内容的位置
子类控件在LinearLayout中常用到的属性:
android:layout_gravity=”bottom”
指的是这个子类控件本身在父容器的XY位置
android:layout_weight=”1”
指的是这个子类控件本身占当前父容器的一个比例(比重)。
RelativeLayout
(相对布局)
定义:
RelativeLayout是相对布局控件,它包含的子控件将以控件之间的相对位置或者子类控件相对父类容器的位置的方式排列
子类控件在RelativeLayout中常用到的属性(相对父容器的位置)
android:layout_alignParentLeft=”true”
(子类控件相对当前父类容器靠左边)
android:layout_alignParentTop=”true”
(子类控件相对父类控件靠上面)
android:layout_marginLeft=”43dp”
(子类控件距离父类容器左边的距离)
android:layout_marginTop=”33dp”
(子类控件距离父类容器上边的距离)
android:layout_centerInParent=”true”
(子类控件相对于父类容器水平居中又垂直居中)
android:layout_centerHorizontal=”true”
(子类控件相对于父类容器水平居中)
android:layout_centerVertical=”true”
(子类控件相对于父类容器垂直居中)
FrameLayout
(帧布局)
这个布局中,所有的子元素都不能被放置在指定的位置,它们统统放于这块区域的左上角,并且后面的子元素直接覆盖在前面的子元素之上,将前面的子元素部分或者全部遮挡。
代码示例:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<