android - ListView中的onItemClick随机改变背景色

标签 android listview background-color

我正在使用多选 ListView 项目。用户可以选择多个项目。所以我想通过更改列表行的文本颜色或背景颜色来突出显示用户选择的项目。我浏览了堆栈溢出链接,但没有得到正确的解决方案。当我尝试这样做时,它会随机更改任何未选择的项目背景颜色。帮助!!!

public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
    videocursor.moveToPosition(position);
    v.setBackgroundColor(Color.parseColor("#80B7DBE8"));
    SaveSelections();
}

最佳答案

随机改变背景颜色的原因是 ListView 回收 列表中的 View 以避免不必要的内存消耗。您需要提供您自己的自定义适配器,您需要在其中覆盖 getView 方法并执行一些检查以仅突出显示那些将某种标志设置为背景颜色为 true 的列表项

关于android - ListView中的onItemClick随机改变背景色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9958751/

相关文章:

android - 应用程序 :visibleGone cannot resolve on android Databinding

java - 删除自定义 ListView 中的重复联系人

Android - 如何将列表框实现为模态对话框/弹出窗口

delphi - Fmx TStringGrid 行颜色

css - Angular 4.x - CSS 背景颜色不改变 IE11

CSS 背景颜色过渡不适用于其他过渡

android - 如何在android中顺时针和逆时针旋转图像?

java - 从另一个类覆盖 Activity 对象的 onActivityResult

android - 检查 Firebase 邀请是否引导至 Play 商店

Android ListView 与 SQL 和 SDcard 数据