为什么ListView在其高度设置为wrap_content时不会按预期运行?

时间:2014-02-05 20:15:44

标签: android listview

我有一个ListView,对于其行中的每个视图,我使用了以下布局:

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

        <ImageView
            android:id="@+id/imageView_contactPhoto"
            android:tag="contact_photo"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:contentDescription="@string/contentDescription_contactPhoto" />

        <ImageView
            android:id="@+id/imageView_contactConversationSymbol"
            android:tag="contact_symbol"
            android:src="@drawable/they_said"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_above="@+id/imageView_contactPhoto"
            android:layout_toLeftOf="@+id/imageView_contactPhoto"
            android:contentDescription="@string/contentDescription_contactPhoto" />

但我只能看到每一行中的第一张图片,好像第二张图片根本不存在。但是,当我将ListView的高度设置为特定值时,如:

    android:layout_height="192dp"

两张图片都在那里。任何想法?

修改 这就是我想要实现的目标:

enter image description here

1 个答案:

答案 0 :(得分:1)

你真的想把第二张图片放在哪里?如果你想把它放在第一个上面和左边那么你就是做错了。您必须在第二个ImageView中删除这两行中的加号(+),使其如下所示:

        android:layout_above="@id/imageView_contactPhoto"
        android:layout_toLeftOf="@id/imageView_contactPhoto"