我有2 Fragments
。 1st
用於計算,而2nd
用於設置。Android上的奇怪共享首選項
我在onPause()
方法中使用SharedPreference.Editor.commit()
保存設置。節約至今沒有問題。我面臨的問題是檢索我的1st Fragment
上的SharedPreference
值。每次按下count
按鈕時我都會檢索到該值。第一次,我得到的數值是變化前的數值(這是我所面臨的問題),我只會在第二次或以上檢索/按下count
按鈕時纔會獲得保存的數值。
我嘗試更改設置,然後按home
按鈕從外部終止應用程序(這會觸發方法),並且當我重新打開設置時,值確實會更改爲我定義的設置。所以,我確定當被觸發時,設置保存了。
我想知道這裏出了什麼問題。任何幫助非常感謝。
按照要求,這是對我的SettingFragment
我保存代碼:
@Override
public void onPause() {
super.onPause();
saveToPref();
}
public void saveToPref() {
SharedPreferences settings = getActivity().getSharedPreferences("mysettings", 0);
Editor edit = settings.edit();
edit.putString("begin", String.valueOf(ibegin)).putString("end", String.valueOf(iend)).commit();
}
向我們展示保存代碼? –
@SherifelKhatib有添加 – Aprian
1.'你確定commit()的返回值是否爲真?'。 2.'你確定ibegin和iend總是最新嗎?' –