列表项目背景正在更改滚动

时间:2010-03-10 11:01:20

标签: xml android listview styles

我有一个应用于ListView的背景颜色

<style name="CKButtons">
    <item name="android:windowBackground">@color/window_background</item>
</style>

但每次滚动列表时,背景颜色都会变回系统默认值(黑色)。当滚动停止时,颜色将返回@color/window_background

该样式应用于AndroidManifest.xml

<activity android:name=".event.EventList" 
    android:theme="@style/CKButtons"></activity>

我的ListView看起来像这样:

<?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"
   >
<ListView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/android:list"/>
<TextView
    android:id="@+id/android:empty"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:text="@string/eventlist_no_items"/>
</LinearLayout>

如何防止这种情况发生?

2 个答案:

答案 0 :(得分:2)

您可以使用android:cacheColorHint上的属性ListView设置一个RGB值,该值应在触摸时用作列表项的背景颜色。

有关详细信息,请参阅:http://android-developers.blogspot.com/2009/01/why-is-my-list-black-android.html

答案 1 :(得分:1)

我已经把它弄清楚了

<style name="CKButtons">
    <item name="android:windowBackground">@color/window_background</item>
    <item name="android:listViewStyle">@style/CKListview</item>
</style>

<style name="CKListview" parent="android:style/Widget.ListView">
    <item name="android:cacheColorHint">@color/window_background</item>
</style>

感谢。