如何存储ArrayList <hashmap <string,string =“”>&gt; </hashmap <string,>

时间:2012-06-15 14:43:22

标签: java android arrays hashmap

我正在尝试找出存储ArrayList<HashMap<String, String>>项目的最佳方式,以便可以跨活动访问它。在一个活动中,我通过向ArrayList添加一系列HashMap<String, String>项来存储它。

我如何在另一项活动中访问此内容?我尝试过SharedPreferences,但据我所知,它只会将它存储为字符串。有什么建议吗?

编辑:我正在以标签,值

的形式将XML存储在HashMap中

3 个答案:

答案 0 :(得分:2)

为什么不使用application class呢?这样,您就可以将数据结构放在那里,并且可以跨活动共享其信息。请注意,应用程序可能会被销毁,并且将其保留在应用程序中意味着您必须将其保存在sharedprefs中,或者如果要永久保留它,则必须写入磁盘。

答案 1 :(得分:1)

  

我如何在另一项活动中访问此内容?

第一种方式

  • 在第一个Activity中将其设为public,在其他Activity中访问。

第二种方式

如果您下载xml并设置数据,请使用Bean Concept.

答案 2 :(得分:1)

最简单的方法是创建一个单独的类并用静态变量填充它,如下所示:

http://www.glenmccl.com/tip_002.htm

通过这种方式,您可以创建静态方法,以根据需要在活动中获取和设置值。

然而,有些人会认为这不像创建扩展Application *的新类那样安全。如果您决定这样做,那么您还需要在AndroidManifest.xml文件中注册extend。