在Android中保存ArrayList的最简单方法是什么?

时间:2016-04-27 19:47:54

标签: java android string arraylist save

我正在构建一个包含收藏列表的应用,但是当我退出应用时,收藏夹列表将重置为空,因为列表未保存(因为列表无法保存在SharedPrefs中) )。如何在Android中保存ArrayList OR String []?如果您推荐序列化或本地数据库,请解释一下这些是什么意思?我已经听过这些术语并遵循了教程但却不理解。

对同一问题的另一种解决方法是你通常会如何构建收藏列表?

3 个答案:

答案 0 :(得分:1)

这是一个以非常好的方式解释它的问题:

Save ArrayList to SharedPreferences

从答案(我已经测试过)开始,在API 11之后你可以这样做:

//Retrieve the values
Set<String> set = myScores.getStringSet("key", null);

//Set the values
Set<String> set = new HashSet<String>();
set.addAll(listOfExistingScores);
scoreEditor.putStringSet("key", set);
scoreEditor.commit();

我总结了他的答案,但你应该检查完整的答案。这真的很有用!

答案 1 :(得分:0)

选项1:最简单。迭代arraylist并将每个元素保存到sharedPreferences

option2:将arraylist转换为字符串。然后保存到共享的首页。

option3:将数据保存到数据库中。谷歌如何使用sqllite与android

答案 2 :(得分:0)

您可以将Sugar ORM库用于Android。它将通过简单地使ArrayList的对象类扩展SugarRecord来为您创建所需的数据库。 例如,如果List类型是ArrayList,则必须使Books类扩展SugarRecord,然后在Activity中循环遍历items并设置item.save()并将其保存到数据库中。 我有一个示例项目here。 如果您有任何疑问,请寄给我一个PM。 希望它有所帮助!