我一直在开发在线商店类型的应用程序,但遇到了障碍:我的任务是添加 Collection 夹系统,但我不知道如何启用按下该系统一部分的按钮RecyclerView 项目的 ,将其添加到 Collection 夹。 (在这种情况下,点击时应该变成一颗完整的心)
最佳答案
为列表中的 Collection 夹添加 boolean 值。最初,保持虚假。 您需要有两个可绘制对象,一个用于选定状态,另一个用于未选定状态。
在 onBindViewHolder 中,根据上述条件在运行时设置可绘制对象。
if(list.isfav)
{
holder.ivHeart.setImageDrawable(ContextCompat.getDrawable(context,(R.drawable.selected));
}else{
holder.ivHeart.setImageDrawable(ContextCompat.getDrawable(context,(R.drawable.unselected));
}
点击此 ivHeart 例如:
holder.ivHeart.setOnClickListener(v -> {
if(list.isfav) {
list[adapterPosition].isfav = false;
}else{
list[adapterPosition].isfav = true;
}
notifyItemChanged(adapterPosition);
});
更改项目时不要忘记通知该项目。
关于java - 将 onClick 添加到 RecyclerView 项目的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56262597/