2012-07-01 60 views
2

只要我更改了我的應用內設置(使用共享偏好設置),我必須使用後退按鈕並返回到活動中才能使更改生效。我希望他們立即生效。我試圖使用設置不會立即生效

protected void onResume(){ 

super.onResume(); 

} 

但它不起作用。我究竟做錯了什麼?我的設置活動由菜單inflater調用,並在點擊保存按鈕時完成。

+2

對不起,但如果沒有正確的答案我不會接受它。我不想誤導像我這樣有同樣問題的人。也許我們現在可以開始爲我的問題找到一個解決方案?如果這是一個很好的答案,我一定會接受它。 – JohnD

+0

60%的改善已經足夠好了。 –

回答

0

這裏有一些事情看出來:

  1. 你寫了新的設置到同一文件作爲一個正在使用的,而不是一個不同
  2. 大多數人使用局部變量將運行時的設置存儲在運行基礎上。確保在更改設置後更新所有這些設置。一個很好的方法是使用updateUserChoices()這樣的獨立方法,並且在其中包含所有代碼,如boolean sound = settings.getBoolean();。然後只需在開始時調用此方法,然後更新設置。
+0

它的工作原理,謝謝! – JohnD