3

我如何在共享首选项android中存储哈希图的数组列表?任何帮助将不胜感激。

4

3 回答 3

4

在 API 11 之后,Shared Preferences 接受诸如 ArrayLists 之类的集合,其中嵌入了 HashMaps。
请通过此链接了解有关将 ArrayLists 保存到 Shared Preferences 的完整演练:
Save ArrayList to SharedPreferences
这将解决您的问题。

PS:Shared Preferences的唯一目的是保存访问频率较低且不太大的值(如Application的设置)。因此,如果您的数据集很大并且与应用程序的设置无关,那么您应该选择合适的 SQLite 数据库。

编辑:
可用于在 ArrayList 中存储数据的其他选项是使用适当的SQLite Database
这是包含与从 SQLite 数据库存储和检索 ArrayLists相关的代码和信息的链接。
我希望这能解决你的问题。

于 2013-08-20T05:58:42.243 回答
0

我通常做的是将 Map 转换为 json-string 并保存。很容易改回哈希图。奇迹般有效。

在此线程中查看 KayKay 的答案以获取一些示例代码。

于 2013-08-20T06:28:48.780 回答
0

为了将 Object 类型存储到 SharedPrefrence 中。

您可以参考下面有类似问题的帖子。

从此链接下载 gson-1.7.1.jar:GsonLibJar

如何在android sharedPreference中存储类对象?

于 2013-08-20T06:56:56.567 回答