更改适配器中列表项的背景

时间:2018-02-12 09:23:13

标签: android android-layout android-recyclerview adapter

我有一个带有String列表的recyclerView 当用户单击两个元素时,它会在返回布尔值的方法中检查其两行 如果为true,则单击2更改背景 - 绿色,否则为红色 我该怎么办?

也就是说,我需要更改Adapter

中两个按下的项目的颜色

2 个答案:

答案 0 :(得分:0)

onBindViewHolder()方法中:

YourObject yo = list.get(position);
holder.viewYouWantToChageBackground = holder.view.setBackgroundColor(yo.booleanCheck ? Color.Red : Color.Green);

请注意,当用户点击时,您应该正确更新列表项,以显示按下哪些列表项以正确设置颜色。

答案 1 :(得分:0)

你可以试试这个,

 boolean twoitemsclicked=false;
 View firstview;
 rcview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                if(!twoitemsclicked)
                    firstview=view;
                else
                {
                    //call the method
                    if(anstrue)
                    {
                        firstview.setBackgroundColor(Color.GREEN);
                        view.setBackgroundColor(Color.GREEN);
                    }
                    else
                    {
                        firstview.setBackgroundColor(Color.RED);
                        view.setBackgroundColor(Color.RED);
                    }
                }
                twoitemsclicked=!twoitemsclicked;

            }
        });