在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 开发面试必问知识点 RecyclerView

Android之RecyclerView介绍

Android Material Design系列之RecyclerView和CardView

Android-RecyclerView系列 RecyclerView滑动后数据显示错乱

Android学习之Fragment的各种实现功能(头部折叠,循环列表RecyclerView,左右滑动ViewPager)