Android RelativeLayout使用一个小问题

时间:2022-01-14 17:37:05

RelativeLayout在项目中可以说是必不可少的,但是最近使用的时候发现了一个以前没有注意的问题,我在RelativeLayout中定义两个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">


<RelativeLayout
android:id="@+id/rl1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">


<Button
android:layout_alignParentBottom="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="40sp"
android:text="buttom"/>


</RelativeLayout>

<RelativeLayout
android:id="@+id/rl2"
android:layout_below="@id/rl1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">


<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="buttom2"
android:textSize="50sp"
android:layout_alignParentRight="true"/>

</RelativeLayout>

</RelativeLayout>

这里的rl1的高度虽然是wrap_content但是rl2并没有显示出来,因为rl里面有一个button有 android:layout_alignParentBottom=”true”属性,所以虽然rl1高度是自适应了但是最外层布局的高度是match_parent,所以这样创建的rl1的高度其实还是match_parent,因为以前没有注意到这个问题,所以在这里做个总结。