| 相对布局(RelativeLayout) 
 1、基本属性
 gravity :设置容器内组件的对齐方式
 
 [XML] 纯文本查看 复制代码 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center">
        <Button
            android:id="@+id/btn"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:gravity="center"
            android:text="居中"
            android:textSize="18sp" />
    </RelativeLayout>
</LinearLayout>
效果图:
 
 
   
 2、 根据父容器定位
 
 layout_alignParentLeft : 左对齐      layout_alignParenRight : 右对齐
 layout_alignParentTop : 顶部对齐
 layout_alignParentButtom : 底部对齐
 android:layout_centerHorizontal :水平居中
 android:layout_centerVertical : 垂直居中
 android:layout_centerInParent : 中间位置
 
 [XML] 纯文本查看 复制代码 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <Button
            android:id="@+id/btn1"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_centerInParent="true"
            android:gravity="center"
            android:text="居中"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn2"
            android:layout_width="100dp"
            android:layout_height="80dp"
            android:layout_centerVertical="true"
            android:gravity="center"
            android:text="垂直居中"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn3"
            android:layout_width="100dp"
            android:layout_height="80dp"
            android:layout_centerHorizontal="true"
            android:gravity="center"
            android:text="水平居中"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn4"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_alignParentRight="true"
            android:gravity="center"
            android:text="右对齐"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn5"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_alignParentLeft="true"
            android:gravity="center"
            android:text="左对齐"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn6"
            android:layout_width="100dp"
            android:layout_height="80dp"
            android:layout_alignParentBottom="true"
            android:gravity="center"
            android:text="底部对齐"
            android:textSize="18sp" />
    </RelativeLayout>
</LinearLayout>
效果图:
 
   
 3、根据兄弟组件定位
 layout_toLeftOf : 参考组件的左边
 layout_toRightOf: 参考组件的左边
 layout_above : 参考组件的上方
 layout_below : 参考组件的下方
 layout_alignTop :对齐参考组件的上边界
 layout_alignBottom : 对齐参考组件的下边界
 layout_alignLeft: 对齐参考组件的左边界
 layout_alignRight : 对齐参考组件的右边界
 
 前四个示例代码:
 
 [XML] 纯文本查看 复制代码 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <Button
            android:id="@+id/btn1"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_centerInParent="true"
            android:gravity="center"
            android:text="居中"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn2"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_centerInParent="true"
            android:layout_toLeftOf="@id/btn1"
            android:gravity="center"
            android:text="左"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn3"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_centerInParent="true"
            android:layout_toRightOf="@id/btn1"
            android:gravity="center"
            android:text="右"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn4"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_above="@id/btn1"
            android:layout_centerInParent="true"
            android:gravity="center"
            android:text="上"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn5"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_below="@id/btn1"
            android:layout_centerInParent="true"
            android:gravity="center"
            android:text="下"
            android:textSize="18sp" />
    </RelativeLayout>
</LinearLayout>
效果图:
 
 
   
 后四个示例代码:
 
 [XML] 纯文本查看 复制代码 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <Button
            android:id="@+id/btn1"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_centerInParent="true"
            android:gravity="center"
            android:text="居中"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn2"
            android:layout_width="wrap_content"
            android:layout_height="80dp"
            android:layout_alignTop="@id/btn1"
            android:gravity="center"
            android:text="对齐上边界"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn3"
            android:layout_width="wrap_content"
            android:layout_height="80dp"
            android:layout_alignBottom="@id/btn1"
            android:layout_alignParentRight="true"
            android:gravity="center"
            android:text="对齐下边界"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn4"
            android:layout_width="wrap_content"
            android:layout_height="80dp"
            android:layout_alignLeft="@id/btn1"
            android:gravity="center"
            android:text="对齐左边界"
            android:textSize="18sp" />
        <Button
            android:id="@+id/btn5"
            android:layout_width="wrap_content"
            android:layout_height="80dp"
            android:layout_alignParentBottom="true"
            android:layout_alignRight="@id/btn1"
            android:gravity="center"
            android:text="对齐右边界"
            android:textSize="18sp" />
    </RelativeLayout>
</LinearLayout>
效果图(居中的按钮是参考组件):
 
 
   
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 |