相對佈局含義
相對佈局分兩種,一種是相對於當前控件的父視圖佈局,例如在父視圖的中間,左下角之類的。
還有一種是相對於指定視圖佈局,在指定佈局的右邊,上邊之類的。
相對父視圖佈局
直接看實例即可:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:textAllCaps="false"
android:text="centerInParent" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:textAllCaps="false"
android:text="centerHorizontal" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:textAllCaps="false"
android:text="centerVertical" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:textAllCaps="false"
android:text="alignParentLeft" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textAllCaps="false"
android:text="alignParentRight" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:textAllCaps="false"
android:text="alignParentBottom" />
</RelativeLayout>
效果如下,具體不演示太多了,隨用隨查就行:
相對指定視圖佈局
我們先定義一個視圖元素,然後其他元素均相對於該元素佈局。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/btnHere"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:textAllCaps="false"
android:text="centerInParent" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/btnHere"
android:textAllCaps="false"
android:text="layout_above" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/btnHere"
android:textAllCaps="false"
android:text="layout_below" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/btnHere"
android:textAllCaps="false"
android:text="alignLeft" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/btnHere"
android:textAllCaps="false"
android:text="alignTop" />
</RelativeLayout>
效果如下: