在android RecyclerView中同时设置两个项目的颜色
Posted
技术标签:
【中文标题】在android RecyclerView中同时设置两个项目的颜色【英文标题】:Set two items color at same time in android RecyclerView 【发布时间】:2021-09-18 19:42:53 【问题描述】:我需要根据用户的选择同时更改两个recylerview 项目的颜色。 例如:-我们在 recyclerview 中有 4 个选项。 案例 1:- 用户单击正确的选项,然后将 recylerview 项目颜色更改为绿色 案例 2:- 用户点击了错误的选项,而不是将 recylerview 项目颜色更改为红色并将正确的选项更改为绿色。休息以保持白色。 enter image description here 图片参考自enter image description here
选项的 JSON 响应:-
"options": [
"options": "big trouble",
"answer_id": 73,
"option_image": "",
"is_correct":"0"
,
"options": "right ",
"answer_id": 74,
"option_image": "",
"is_correct":"0"
,
"options": "none",
"answer_id": 75,
"option_image": ""
,
"is_correct":"1"
,
"options": "no error",
"answer_id": 76,
"option_image": "",
"is_correct":"0"
]
Rest 是正常的 recylerview 和适配器。
【问题讨论】:
在这里发布你的一些代码 我不会将 recyclerview 用于这些选项。你只有四个选项,看起来很稳定,而且都是可见的。你不需要回收。 (除非我遗漏了什么) 你能贴一些代码@OyaCanli @UsamaAltaf 再次发帖 正如@OyaCanli所说,没有必要使用recyclerview 【参考方案1】: holder.mCardItems.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
if(---) //True Condition
holder.itemView.setBackgroundColor(Color.parseColor("#00C853"));
else if (---) // False Condition
holder.itemView.setBackgroundColor(Color.parseColor("#F44336"));
else //Nurtal Condition
holder.itemView.setBackgroundColor(Color.parseColor("#FFFFFF"));
);
【讨论】:
它只有在我们点击时才有效。请检查我上面引用的图片。以上是关于在android RecyclerView中同时设置两个项目的颜色的主要内容,如果未能解决你的问题,请参考以下文章
Android 开发面试必问知识点 RecyclerView
Android Material Design系列之RecyclerView和CardView
Android-RecyclerView系列 RecyclerView滑动后数据显示错乱
Android学习之Fragment的各种实现功能(头部折叠,循环列表RecyclerView,左右滑动ViewPager)