在OnBindView()内部。
boolean beforeClicked =false;
holder.imageView.setOnClickLisnter(new OnClickListner(){
if(!beforeClicked){
holder.imageView.setDrawableResource(R.layout.whiteHeart);
beforeClicked = true;
}
else{
holder.imageView.setDrawableResource(R.layout.blackHeart);
beforeClicked = false;
}
});
可能会有拼写错误。您将要纠正。
尝试一下:
//Define Global Variable
Boolean isCheck = true;
//On click of icon
isCheck =! isCheck // This will make boolean switch like On/Off
if(isCheck){
//Add your fill icon here
}else{
//Add your un-filled icon here
}
是,您需要在回收者视图项中添加按钮,并在模型类中添加一个标志,因此,当您第一次单击图像时,将图像更改为第二个(实心),并将标志设置为true,然后在第二次单击时进行选择您喜欢的图片代码。
所以,您的代码结构将如下所示
您的模型类
public class model {
private boolean isFirstTime = false;
...
public boolean isFirstTime() {
return isFirstTime;
}
public void setFirstTime(boolean firstTime) {
isFirstTime = firstTime;
}
...
}
将以下代码添加到您的适配器
holder.yourView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (!arrayList.get(position).getIsClick()) {
holder.yourImageView.setImageResource(getResources().getDrawable(R.drawable.secondImage));
arrayList.get(position).setIsClick(true);
} else {
//your like image code
}
notifyDataSetChanged();
}
});
我希望这可以帮助您!
谢谢。