我有以下布局。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/list_item_bottom">
<TextView android:id="@+id/list_item_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<ViewStub android:id="@+id/stub_for_alt_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/list_item_name"
android:layout="@layout/text_view_alt_name"/>
<ImageView android:id="@+id/list_item_dopinfo1_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/stub_for_alt_name"
android:src="@drawable/ic_released"/>
</RelativeLayout>
我希望ViewStub在TextView之下,而ImageView在ViewStub之下。
如我所料,显示了ViewStub膨胀的元素。
但是没有ViewStub的元素的TextView与ImageView重叠。
我的布局有什么问题?
更新:
我发现的唯一解决方案是为ViewStub和相关的TextView赋予相同的
android:id
值。 最佳答案
我知道这是一个古老的问题,但是其中的技巧是将inflatedId
参数设置为与实际的viewStub本身相同,如下所示:
<ViewStub android:id="@+id/stub_for_alt_name"
android:inflatedId="@id/stub_for_alt_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/list_item_name"
android:layout="@layout/text_view_alt_name"/>
关于android - RelativeLayout和ViewStub膨胀,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13045531/