我有一个奇怪的问题,在我的 ListView Activity 中,我根据某些变量设置列表项的背景颜色。基本上,该项目将是白色、灰色和蓝色(如果选中)。
当我滚动列表(向下滑动)时, ListView 项的颜色随着一行靠近底部而逐渐变淡。在底部,它失去了所有原来的颜色,我相信它现在是透明的。所以现在,两个不同颜色的行(白色和灰色)在底部看起来都一样。然而,这不会发生在蓝色元素上。
快速谷歌搜索让我添加
list.setVerticalFadingEdgeEnabled(false);
但这对颜色变化没有影响。我在这里遗漏了什么吗?
如果需要,设置背景颜色的代码如下:
if (itemChecked.get(position)) {
//If the row is selected, set blue
row.setBackgroundColor(0x9934B5E4);
} else if (!email.isRead()) {
//If the email is unread, set white
row.setBackgroundColor(Color.WHITE);
} else {
//Otherwise set grey.
row.setBackgroundColor(0xd6d6d6);
}
任何见解将不胜感激,谢谢!
编辑:它的样子。
屏幕顶部。
屏幕底部
最佳答案
最近看到这个问题。给出的答案是,有一个默认的可绘制对象被应用于整个 ListView 背景的背景,该背景具有从灰色到白色的渐变。尝试为 ListView 的背景设置纯色,例如 #ffffff。
所有类似的问题都说这是解决方案:
android:cacheColorHint="#000000"
关于android - 屏幕底部的 ListView 颜色变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20629594/