在android中使用带有渐变背景的listview时,有些项目有黑色背景

时间:2012-09-24 23:30:48

标签: android android-layout android-listview android-theme android-styles

我正在列表视图中为所选项目设置背景颜色,如下所示;

@Override
public View getView(int position, View convertView, ViewGroup parent) {

        if (position == containerFragment.vList.getCheckedItemPosition()) {
        convertView.setBackgroundResource(R.color.listview_selected_background);
        } 
        else {
            convertView.setBackgroundResource(R.color.listview_default_background);
        }
        return convertView;
}

颜色定义是这样的;

<color name="listview_default_background">#00000000</color>
<color name="listview_selected_background">#333333</color>

如果我不使用渐变一切正常,但当我使用“android:windowBackground”的渐变时;一些项目获得黑色背景。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

如果要解决此问题,请使用 cacheColorHint 属性和 @android:color / transparent 值与ListView标记。

完整代码

<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:cacheColorHint="@android:color/transparent" />