我的共享偏好不会被保存,例如,如果我的手机电池突然突然被取出,则会检查一个复选框。知道怎么解决这个问题吗?
答案 0 :(得分:3)
拉动电池或意外关机时不会调用任何事件。解决这个问题的唯一方法是在每次更改首选项时保存首选项。
例如,您的CheckBox
:
CheckBox myCheck = (CheckBox) findViewById(R.id.my_checkbox);
myCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
SharedPreferences prefs = <your prefs>;
Editor editor = prefs.edit();
// Store value of "isChecked" into "editor"
editor.commit();
}
});
您必须对所有其他偏好设置进行类似的更改。