Ich arbeite mit Recyclerview. Mein recyclerview wird von der Liste bevölkert und es hat beide Zustände des Checkboxes nach dem Füllen. aber ich habe ein Problem, wenn ich an einer bestimmten Position oder nach dem Scrollen seine noch auf ihrer vorherigen Position abhakte. Mein Code ist unten gezeigt.Umgang mit Recyclerview-Status Mit Kontrollkästchen?
@Override
public void onBindViewHolder(final AttendanceHolder holder, final int position) {
holder.statusCheckBox.setOnCheckedChangeListener(null);
if(childrenListForAttendance.get(position).getStatus()==0) {
holder.statusCheckBox.setTag(childrenListForAttendance.get(position));
holder.childName.setText(childrenListForAttendance.get(position).getMchildName());
holder.statusCheckBox.setChecked(childrenListForAttendance.get(position).isSelected());
}
else{
holder.statusCheckBox.setTag(childrenListForAttendance.get(position));
holder.childName.setText(childrenListForAttendance.get(position).getMchildName());
holder.statusCheckBox.setChecked(false);
}
holder.statusCheckBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
childrenListForAttendance.get(position).setIsSelected(isChecked);
}
});
}
@Override
public int getItemCount()
{
return childrenListForAttendance.size();
}
Wie mit dieser Situation umzugehen. danke im voraus.
Danke für Ihre Antwort, ich bin in android neue .can u mir ein Codebeispiel –
überprüfen Code geben Sie jedes Mal auf Checkbox aktiviert setzen müssen, und jedes Mal deaktivieren. –