Witam mam listę oraz własny adapter, każdy wiersz zawiera checkbox oraz textView. Chcę aby po kliknięciu na checkbox napis został przekreślony. Ogólnie mi to działa tylko nie ważne czy kliknę pierwszy checkbox czy ostatni to zawsze przekreśla mi tekst który znajduje się jako ostatni w liście. Nie wiem dlaczego
holder.checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
int itemPos = (int) buttonView.getTag();
Product element = data.get(itemPos);
element.setSelected(isChecked);
if (element.isSelected()){
holder.txtName.setPaintFlags(holder.txtName.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
}else{
holder.txtName.setPaintFlags(0);
}
}
});
row.setTag(holder);
holder.checkBox.setTag(position);
}
else
{
holder = (RowHolder) row.getTag();
((RowHolder) row.getTag()).checkBox.setTag(position);
}
holder.txtName.setText("TEXT");