天天看点

Android RelativeLayout

RelativeLayout又称为相对布局,也是一种常用的布局,和LinearLayout的排列规则不同,RelativeLayout显得更加随意一些,它可以通过相对定位的方式让控件出现在布局的任何位置

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="Button 1"/>
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:text="Button 2"/>
    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="Button 3"/>
    <Button
        android:id="@+id/button4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentBottom="true"
        android:text="Button 4"/>
    <Button
        android:id="@+id/button5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:text="Button 5"/>

</RelativeLayout>
           

五个按钮,第一个在左上角,第二个在右上角,第三个在最中间,第四个在左下角,第五个在右下角

android:layout_above属性可以让一个控件位于两一个控件的上方,需要为这个属性指定相对控件id的引用

android:layout_below属性可以让一个控件位于另一个控件的下方

android:layout_toLeftof属性可以让一个控件位于另一个控件的左侧

android:layout_toRightof属性可以让一个控件位于另一个控件的右侧

android:layout_alignLeft属性可以让一个控件的左边缘和另一个控件的左边缘对齐

android:layout_alignRight属性可以让一个控件的右边缘和另一个控件的右边缘对齐

android:layout_alignTop属性可以让一个控件的上边缘和另一个控件的上边缘对齐

android:layout_alignBottom属性可以让一个控件的下边缘和另一个控件的下边缘对齐

注意:

当一个控件去引用另一个控件的id时,该控件一定要定义在引用控件的后面,不然会出现找不到id的情况