我在理解這裏的模式時遇到了一些麻煩。我有一個視圖和適配器混合太多。我的邏輯在哪裏出錯?RecyclerView中的可點擊圖標
嘗試獲取類似於可點擊標記的圖標。如果選中,則設置爲true,如果再次選中則返回false。 但是,即使設置爲true或false,視圖也不會自動刷新。
public class MyPojo {
String title;
String desc;
int image;
boolean isChecked;
我的適配器類別〜
@Override
public void onBindViewHolder(ViewHolder holder, final int position) {
// - get element from your dataset at this position
// - replace the contents of the view with that element
TextView title = (TextView) holder.mView.findViewById(R.id.textView);
TextView desc = (TextView) holder.mView.findViewById(R.id.textView2);
final ImageView image = (ImageView) holder.mView.findViewById(R.id.imageView);
title.setText(pojos.get(position).getTitle());
desc.setText(pojos.get(position).getDesc());
if (!(pojos.get(position).isChecked())) {
image.setImageResource(pojos.get(position).getImage());
} else {
image.setImageResource(R.mipmap.ic_launcher);
}
image.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
image.setImageResource(R.mipmap.ic_launcher);
//todo Where do I set my is clicked ?
if (pojos.get(position).isChecked) {
pojos.get(position).setChecked(false);
//image.setImageResource(R.mipmap.ic_launcher);
}else{
pojos.get(position).setChecked(true);
//image.setImageResource(pojos.get(position).getImage());
}
}
});
}
你必須在你的ViewHolder類中綁定你的視圖,例如title和desc,而不是在onBindViewHolder中。 – FarshidABZ