我已经创建了一个特定的列表,它存在于以下元素中,以创建一个可滚动的列表,每一行都包含左侧的图像和右侧的一些文本:

从“根”布局开始:

<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="#C8C8C8"
    >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>
    <ListView
        android:id="@android:id/list"
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent"
        android:drawSelectorOnTop="false"
        android:divider="#C8C8C8"
        android:background="#C8C8C8"/>
</LinearLayout>

然后在ListView中,我放置以下“row”项:

<?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="wrap_content"
    android:orientation="horizontal"
    android:background="@drawable/bg_row"
>
    <ImageView
        android:layout_width="wrap_content"
        android:paddingLeft="10px"
        android:paddingRight="15px"
        android:paddingTop="5px"
        android:paddingBottom="5px"
        android:layout_height="wrap_content"
        android:src="@drawable/bg_image"
    />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingTop="5px"
        android:paddingBottom="5px"
        android:textSize="16sp"
        android:textColor="#000000"
        android:layout_gravity="center"
        android:maxHeight="50px"/>
</LinearLayout>

As long as the screen is shown statically (as in no movement) it will be shown correctly, but when I start scrolling through the list the background of the row-item (an "icon" as can be shown in the code) will be shown correctly but the background of the "root" layout will become completely black... when the scrolling stops the background will, most of the times, get back its color... As I test I also added a TextView in that root-element with the same background, this one will detain it's color when the List is scrolled... Any idea why this is happening, and how to solve this?


当前回答

android: id =“@android: id /列表” android: layout_width = "宽和" android: layout_height = "宽和" android: drawSelectorOnTop = " false " android:分频器= " # C8C8C8” android:背景= " # C8C8C8” android: cacheColorHint = " # 00000000 " / >

其他回答

你可以这样用:

list.setCacheColorHint(Color.TRANSPARENT);
list.requestFocus(0);

android: id =“@android: id /列表” android: layout_width = "宽和" android: layout_height = "宽和" android: drawSelectorOnTop = " false " android:分频器= " # C8C8C8” android:背景= " # C8C8C8” android: cacheColorHint = " # 00000000 " / >

添加属性

android:cacheColorHint="#00000000" //透明颜色

android:cacheColorHint="@android:color/transparent"

在你的xml中使用Listview set

    android:cacheColorHint="@android:color/transparent"