Android - RelativeLayout作为ListView中的项目覆盖

时间:2013-05-29 17:19:01

标签: android listview view overlay relativelayout

我有一个由BaseAdapter备份的ListView。我正在使用的布局是RelativeLayout,其中一些TextViews和ImageViews呈现正常。问题是我想要清除列表中的一些项目。我创建了一个空的RelativeLayout,它应该与父高度和宽度匹配,但它根本不会渲染,除非我在其中放置了一个TextView。为什么会出现这种情况?如何将ListView项目变灰?

谢谢!

布局在这里:

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="10dp"
    android:paddingTop="10dp" >

    <RelativeLayout
        android:id="@+id/leftIcon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:layout_marginRight="10dp" >

        <ImageView
            android:id="@+id/item_arrow"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/list_item_arrow"
            android:contentDescription="@null"
            android:visibility="gone" />

        <ImageView
            android:id="@+id/item_plus"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/icon_plus"
            android:contentDescription="@null"
            android:visibility="gone" />

        <ImageView
            android:id="@+id/item_arrow_down"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/list_item_arrow_down"
            android:contentDescription="@null"
            android:visibility="gone" />
    </RelativeLayout>

    <TextView
        android:id="@+id/textViewCount"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dip"
        android:layout_marginRight="20dip"
        android:layout_toLeftOf="@id/leftIcon"
        android:textColor="@color/font_dark_gray"
        android:textSize="17sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/menu_item_name"
        style="@style/MenuRowStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dp"
        android:layout_toLeftOf="@id/textViewCount"
        android:ellipsize="end"
        android:lines="1" />
</RelativeLayout>

<!-- Problematic overlay layout -->
<RelativeLayout
    android:id="@+id/overlay"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="grey_color_code"
    android:layout_centerInParent="true"
    android:visibility="visible" >
    <!-- If this is not here the overlay doesn not render on screen -->
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dip"
        android:layout_marginRight="20dip"
        android:layout_toLeftOf="@id/leftIcon"
        android:textColor="@color/font_dark_gray"
        android:textSize="17sp"
        android:textStyle="bold" />
</RelativeLayout>

</RelativeLayout>

0 个答案:

没有答案