我无法使View
填充RelativeLayout
的高度,这是ListView
项的布局。这是我的布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<View
android:id="@+id/fill_the_height_please"
android:layout_width="15dp"
android:layout_height="match_parent"
android:background="@color/red"/>
<TextView
android:id="@+id/delivery_list_item_dest"
android:layout_width="wrap_content"
android:layout_toRightOf="@id/fill_the_height_please"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="2dp"
android:text="Destinatario" />
<TextView
android:id="@+id/delivery_list_item_address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/delivery_list_item_dest"
android:layout_below="@id/delivery_list_item_dest"
android:layout_marginTop="5dp"
android:layout_marginRight="5dp"
android:text="Location" />
<ImageButton
android:id="@+id/delivery_list_item_mapBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="0dp"
android:src="@drawable/map_location"
android:background="@null" />
ID fill_the_height_please 的视图未填充项目高度。在下图中,您可以看到结果(未显示任何内容):
我想要这样的事情:
U
我还尝试按如下方式更改视图布局,但无论如何都不起作用:
<View
android:id="@+id/fill_the_height_please"
android:layout_width="15dp"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:background="@color/red"/>
请帮助我实现目标吗?谢谢。
答案 0 :(得分:2)
一个建议是将layout_alignTop =“@ + id / delivery_list_item_mapBtn”和layout_alignBottom =“@ + id / delivery_list_item_mapBtn”添加到视图中,并使其始终适合图像高度。
答案 1 :(得分:1)
尝试更改
android:layout_toRightOf="@id/delivery_list_item_statusBtn"
到
android:layout_toRightOf="@id/fill_the_height_please"
您没有delivery_list_item_statusBtn。但我看到红色部分甚至没有改变这一点。尝试一下,如果没有帮助,请发布适配器的代码。
答案 2 :(得分:1)
查看here似乎RelativeLayout
在版本17及更低版本中存在错误。所以我改变了我的布局如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<View
android:id="@+id/fill_the_height_please"
android:layout_width="15dp"
android:layout_height="match_parent"
android:background="@color/red"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:orientation="vertical" >
<TextView
android:id="@+id/delivery_list_item_dest"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Destinatario"
android:layout_marginBottom="5dp" />
<TextView
android:id="@+id/delivery_list_item_address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Location" />
</LinearLayout>
<ImageButton
android:id="@+id/delivery_list_item_mapBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="0dp"
android:src="@drawable/map_location"
android:background="@null" />
</RelativeLayout>
有点复杂但有效。但是,如果有人仅使用RelativeLayout