Android Listview未在相对布局中显示

时间:2014-08-26 16:12:48

标签: android android-listview android-relativelayout

我有一个相对布局来显示带有一些按钮和edittext的菜单。这显示正常。 当我将listview添加到父相对布局(以显示菜单布局下面的列表视图)时,但未显示列表视图。 我的XML代码插在下面。

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <fragment
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.MapFragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <RelativeLayout
        android:id="@+id/listactivity"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

    <RelativeLayout
        android:id="@+id/menu"
        android:layout_width="match_parent"
        android:layout_height="75dp"
        android:background="#ff0000"
        android:orientation="vertical"
        android:focusableInTouchMode="true" 
        android:layout_gravity="top" >

        <Button
            android:id="@+id/cities"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Cities"
            android:textStyle="bold"
            android:onClick="showPopup" />

    <Button
        android:id="@+id/addcity"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:minWidth="30dp"
        android:text="+"
        android:textStyle="bold"
        android:layout_toRightOf="@+id/cities" />

    <Button
        android:id="@+id/days"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Days"
        android:textStyle="bold"
        android:layout_toRightOf="@+id/addcity" />

    <Button
        android:id="@+id/addday"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/days"
        android:minWidth="30dp"
        android:text="+"
        android:textStyle="bold" />

    <Button
        android:id="@+id/Days"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text=""
        android:layout_toRightOf="@+id/addday"
        android:textStyle="bold"
        android:onClick="showListview" />

    <EditText
        android:id="@+id/myEditText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:layout_below="@+id/cities"
        android:ems="10" >
    </EditText>

</RelativeLayout>

    <ListView
        android:id="@+id/listview"
        android:background="#fff000"
        android:layout_width="150dp"
        android:layout_height="wrap_content"
        android:visibility="visible"
        android:layout_below="@+id/menu" />

</RelativeLayout>

2 个答案:

答案 0 :(得分:1)

可能是因为您的列表视图的高度设置为wrap_content,您应该避免将其用于列表。尝试将其设置为特定高度,看看是否有帮助

这是一个很好的答案的链接 https://stackoverflow.com/a/4271930/1417483

答案 1 :(得分:0)

因为ListView的高度设置为wrap_content,所以在你向它添加内容之前它的高度为0dp。

确保初始化ListView并向其添加一些虚拟数据。另一个选项是将ListView高度设置为拉伸到屏幕底部,如下所示:

    <ListView
        android:id="@+id/listview"
        android:background="#fff000"
        android:layout_width="150dp"
        android:layout_height="0dp"
        android:visibility="visible"
        android:layout_below="@+id/menu"
        android:layout_alignParentBottom="true"/>