在选定的列表视图上设置背景?

时间:2011-03-16 12:33:40

标签: android listview background

我有以下2个布局文件来显示联系人组列表。它的正常状态看起来很完美。我背景上的半透明列表项。当我触摸列表移动它时,背景变为黑色而不是保持半透明。

gouplist.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:background="@drawable/megaphone_320x480">
    <ListView 
        android:id="@+id/android:list" 
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" 
        />
    <TextView 
        android:id="@id/android:empty" 
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" 
        android:text="No Groups" 
        />
</LinearLayout>

two_line_list.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView 
        android:id="@+id/lv_topText"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:textColor="#BBBBBB" 
        android:background="#99000000"
        android:textSize="24sp" 
        android:typeface="sans" 
        android:textStyle="bold"
        />
    <TextView 
        android:id="@+id/lv_bottomText"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:textColor="#BBBBBB" 
        android:background="#99000000"
        android:textSize="18sp" 
        android:typeface="sans" 
        android:textStyle="bold"
        />
</LinearLayout>

2 个答案:

答案 0 :(得分:3)

需要在实际的listview上设置cacheColorHint属性,就像这样。正如3dmg所说,它通常被设置为与ListView所在的容器相同的背景颜色。在下面的示例中,ListView将位于LinearLayout内,该LinearLayout也具有白色(#FFF)背景。

<ListView
    android:id="@+id/android:list"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="1.0"
    android:cacheColorHint="#FFF" />

答案 1 :(得分:2)

我认为这是列表参数:

android:cacheColorHint="@color/colorOfYourList"

android:cacheColorHint