1

BaseAdapter によってバックアップされた ListView があります。私が使用しているレイアウトは、正常にレンダリングされているいくつかの TextViews と ImageViews を持つ RelativeLayout です。問題は、リスト内のいくつかの項目をグレー表示にしたいことです。親の高さと幅に一致する空の 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>
4

0 に答える 0