Я использовал метод onCheckedChanged для обработки флажков. Он хорошо работает, когда я щелкаю. После закрытия или закрытия приложения и при повторном его открытии состояние флажков остается отключенным. даже после закрытия приложения и его повторного открытия. Я пытался использовать общие преференции, опубликованные здесь, чтобы добиться этого. Но так как я не прояснил это, я не смог.
viewHolder.checkbox
.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
Model element = (Model) viewHolder.checkbox
.getTag();
element.setSelected(buttonView.isChecked());
Interactivearrayadapter.this.putBooleanInPreferences(isChecked,"isChecked");
}
});
}
public void putBooleanInPreferences(boolean isChecked,String key){
SharedPreferences sharedPreferences = this.getPreferences(Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean(key, isChecked);
editor.commit();
}
public boolean getBooleanFromPreferences(String key){
SharedPreferences sharedPreferences = this.getPreferences(Activity.MODE_PRIVATE);
Boolean isChecked = sharedPreferences.getBoolean(key, false);
return isChecked;
Я использовал этот код внутри класса Interactivearrayadapter, так как я отображал флажки в списке. Ошибка показывает в getpreference (строка) не поддерживается этот класс.