我試圖在SharedPreferences中保存一個開關的狀態,但我在執行此操作時遇到了問題。我有一個用於打開和關閉音頻的開關。使用SharedPreferences保存狀態的問題
public void audio() {
audio.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean isChecked) {
if (isChecked) {
player= MediaPlayer.create(legoActivity.this, R.raw.sound);
player.start();
SharedPreferences sharedPreferences = getSharedPreferences("prefss", MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean("audio", isChecked);
editor.apply();
editor.commit();
}
...
}
...
});
...
}
在活動結束,在oncCreate
方法我有:
SharedPreferences prefs = getSharedPreferences("prefss", MODE_PRIVATE);
prefs.getBoolean("audio", true);
兩個代碼片段來自相同的活性。
是什麼問題?你得到什麼異常/錯誤? – PedroHidalgo
我沒有得到任何異常/錯誤。國家只是沒有保存 – John