0

例如,我的共享首选项没有保存,如果我的手机电池突然突然被取出,则会选中一个复选框。知道如何解决这个问题吗?

4

1 回答 1

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();
    }
});

您必须对所有其他首选项设置进行类似更改。

于 2012-08-07T05:39:22.440 回答