0
我的應用程序存儲一個ArrayList的自定義食品對象,它被髮布到主Activity中的ListView。該應用程序的ListView部分完美地工作,但我有一個問題保存和加載這些食物對象和SharedPreferences。StringSets不會保存/加載到/從SharedPreferences
我將這些Food對象保存爲SharedPreferences,方法是將它們的每個屬性保存爲一個String,將它們放入StringSet中,並通過putStringSet函數保存每個對象。當應用程序恢復時,它會讀取SharedPreferences中的每個StringSet,並創建一個帶有讀取屬性的新Food項,然後將每個項添加到ArrayList中。代碼看起來應該可以工作,但不會在會話之間加載數據。任何人都可以幫我弄清楚爲什麼?謝謝!
Code removed
凡從未實例化foodNamesSet變量。因此,檢查if(foodNamesSet!= null)總是返回false。同樣適用於其他集合。此外,我認爲你應該在onpause而不是onStop()中做邏輯。 – 2013-02-10 03:36:37
@NazarMerza這就是它,謝謝!如果沒有發現任何東西,我不得不將實例化Set as HashSet並更改SharedPrefs訪問行以創建新的HashSet。發佈這個作爲迴應,我會批准它作爲答案。 –
Argus9
2013-02-10 17:16:01