Android:- 如何在整个应用程序中使动态 HashMap 可访问? [复制]
Posted
技术标签:
【中文标题】Android:- 如何在整个应用程序中使动态 HashMap 可访问? [复制]【英文标题】:Android:- How to Make dynamic HashMap Accessible in whole application? [duplicate] 【发布时间】:2011-11-04 06:46:42 【问题描述】:我有一个问题是我正在解析来自 google api 的数据,它返回给我
JSON
数据。
我将该数据存储在HashMap<string,String>.
这是动态的。
现在我想让它在我的另一类应用程序中可访问。
所以我很困惑如何使它在其他类中可访问而不使静态。
有什么解决办法吗?如果您有任何示例代码,请发送。
我尝试使用static Map<String, String> map = new HashMap<String, String>();
但它不会产生影响,因为响应是动态的。
所以我需要可以在多个类中访问的动态哈希图。
感谢您的帮助。 马哈维尔。 mahaveermuttha@gmail.com
【问题讨论】:
【参考方案1】:android 提供应用程序上下文,您可以将其子类化并在其他活动中使用。步骤是(我还突出显示了链接,以便您阅读重要内容):
修改您的Android Manifest 以包含自定义应用程序。查看 AndroidManifest.xml 中的以下部分
<application android:icon="@drawable/icon" android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar" android:name="com.mypackage.application.MyCustomApplication">
....
android:name="com.mypackage.application.MyCustomApplication" 指的是 MyCustomApplication 类,它是您要创建的 Application 的子类
现在,是时候创建子类了。在这里,您要确保将 HashMap
public class MyCustomApplication extends Application
HashMap myMap;
public MyCustomApplication()
this.myMap = new HashMap();
public HashMap getMyMap()
return myMap;
一旦你这样做了,现在你可以通过调用getApplication()从任何活动中访问你的地图。确保将 Application 转换为 MyCustomApplication 以正确使用它并访问方法 getMyMap()
如果您需要进一步说明,请告诉我
【讨论】:
感谢@momo,非常有帮助。 我们可以在这个类中重载函数吗?【参考方案2】:您可以尝试创建一个自定义Application 对象并将HashMap 设置为该Application 对象上的一个字段。然后,您的所有服务和活动都可以在那里访问它。
【讨论】:
感谢费米的帮助。我是 Android 新手,也是 Java 新手。你能用一些代码说明一下吗……我从最近两天开始尝试。我没有得到解决方案。再次感谢。以上是关于Android:- 如何在整个应用程序中使动态 HashMap 可访问? [复制]的主要内容,如果未能解决你的问题,请参考以下文章