我的应用程序存储自定义Food对象的ArrayList,这些对象将发布到主Activity中的ListView。应用程序的ListView部分工作正常,但我在向SharedPreferences保存和加载这些Food对象时遇到了问题。
我将这些Food对象保存为SharedPreferences,方法是将每个属性保存为String,将它们放在StringSet中,并通过putStringSet函数保存每个属性。当应用程序恢复时,它会从SharedPreferences读取每个StringSet并创建一个带有读取属性的新Food项,然后将每个添加到ArrayList。代码似乎应该可以工作,但只是不会在会话之间加载数据。任何人都可以帮我找出原因吗?谢谢!
Code removed
答案 0 :(得分:1)
你似乎永远不会实例化foodNamesSet变量。因此检查if(foodNamesSet!= null)总是返回false。同样的事情也适用于其他集合。此外,我认为你应该在onPause()而不是onStop()中使用逻辑。