【发布时间】:2017-01-01 21:39:01
【问题描述】:
我了解保存值的最佳方法是使用 SharedPreferences,例如
SharedPreferences Savesettings = getSharedPreferences("settingFile", MODE_PRIVATE);
SharedPreferences.Editor example = Savesettings.edit();
example.putString("Name", name)
.putInt("Age", age)
.putInt("Score", score)
example.apply();
但是,如果我希望我的程序在用户关闭和打开程序后记住某个按钮被禁用或启用,该怎么办?我已经尝试过 RegisterOnChangePreferanceListener 但是我没有运气,例如
SharedPreferences Preferences= PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.OnSharedPreferenceChangeListener Example =
new SharedPreferences.OnSharedPreferenceChangeListener() {
public void onSharedPreferenceChanged(SharedPreferences preferance, String key) {
Name = name;//only an example not the main focus
Age = age;
Score = score;
enableBTN = false; //disables button
Name.setEnabled(false); //disables the edit text from further editing
}
};
Preferences.registerOnSharedPreferenceChangeListener(Example);
有没有办法做到这一点,这两种方法似乎都不适合我。
【问题讨论】: