更改适配器中列表项的背景
Change background of list item in Adapter
我有一个带有字符串列表的 recyclerView
当用户单击两个元素时,它会在 returns 布尔值的方法中检查其 2 行
如果为真,则单击 2 次项目更改背景 - 绿色,否则为红色
我该怎么做?
也就是我需要改变Adapter中两个按下的item的颜色
在您的 onBindViewHolder()
方法中:
YourObject yo = list.get(position);
holder.viewYouWantToChageBackground = holder.view.setBackgroundColor(yo.booleanCheck ? Color.Red : Color.Green);
请注意,当用户点击时,您应该正确更新您的列表项,显示按下哪些列表项以正确设置颜色。
你可以试试这个,
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;
}
});
我有一个带有字符串列表的 recyclerView 当用户单击两个元素时,它会在 returns 布尔值的方法中检查其 2 行 如果为真,则单击 2 次项目更改背景 - 绿色,否则为红色 我该怎么做?
也就是我需要改变Adapter中两个按下的item的颜色
在您的 onBindViewHolder()
方法中:
YourObject yo = list.get(position);
holder.viewYouWantToChageBackground = holder.view.setBackgroundColor(yo.booleanCheck ? Color.Red : Color.Green);
请注意,当用户点击时,您应该正确更新您的列表项,显示按下哪些列表项以正确设置颜色。
你可以试试这个,
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;
}
});