1
我有兩個活動:一個(SettingsActivity),從而節省了在的onStop(偏好)是這樣的:如何閱讀更新的共享首選項?
SharedPreferences.Editor editor = getSharedPreferences("myprefs", Context.MODE_PRIVATE).edit();
editor.putString("login", etLogin.getText().toString());
editor.putString("password", etPassword.getText().toString());
editor.commit();
和第二個(MainActitivy),其內容爲他們的onResume()之類
SharedPreferences prefs = activity.getSharedPreferences("myprefs", Context.MODE_PRIVATE);
prefs.getString(...);
當我更改設置並返回主活動時,舊值將被加載!我必須再次打開SettingsActivity並再次返回,才能進行更改。
是onStop()的保存例程在onResume()旁邊的單獨線程中運行,因此讀取時,更改還沒有提交?如何實現正確的行爲?骯髒的解決方案的想法:我正在考慮一個單身人士,它擁有我的喜好,並保存()和負載(),但這是醜陋的解決方案,我想知道,如何正確地做到這一點。
是的,onStop()已被調用。但是它在onResume()之後調用() – shmoula 2012-07-07 22:50:30
我在onStop()中調用了記錄器,並且輸出被打印,所以我認爲調用了onStop()。 – shmoula 2012-07-07 22:57:59
是否在onStop()和onResume()方法的末尾調用super.onStop()和super.onResume()?這可以解決你的問題!? – aichingm 2012-07-07 23:22:49