首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何让动态HashMap在整个应用程序中都可访问?

如何让动态HashMap在整个应用程序中都可访问?
EN

Stack Overflow用户
提问于 2011-08-26 14:42:23
回答 2查看 2.4K关注 0票数 0

我有一个问题是我正在解析来自google api的数据,它返回给我JSON数据。我将数据存储在HashMap<string,String>.中,它是动态的。现在,我想让它在我的另一个应用程序类中可访问。所以我很困惑如何让它在其他类中可访问,而不是静态的。有什么解决方案吗?如果你有任何样本代码,请发送。我试过使用static Map<String, String> map = new HashMap<String, String>();,但它不能创建场景,因为响应是动态的。所以我需要动态hashmap,它可以在多个类中访问。

谢谢你的帮助。马哈维尔。mahaveermuttha@gmail.com

EN

回答 2

Stack Overflow用户

发布于 2011-08-26 16:00:48

Android提供了Application Context,您可以将其子类化,并在其他活动中使用它。步骤如下(我还会突出显示链接,以便您可以阅读重要的内容):

  • 修改Android Manifest以包含自定义应用程序。查看AndroidManifest.xml

中的以下部分

代码语言:javascript
复制
    <application android:icon="@drawable/icon" android:label="@string/app_name"
            android:theme="@android:style/Theme.NoTitleBar" android:name="com.mypackage.application.MyCustomApplication">
....

引用MyCustomApplication类的android:name="com.mypackage.application.MyCustomApplication“,该类是您要创建的Application的子类

  • 现在,是时候创建你的子类了。在这里,您希望确保将HashMap作为其变量的一部分。因此,您的子类将看起来像

代码语言:javascript
复制
    public class  MyCustomApplication extends Application {
        HashMap myMap;

        public MyCustomApplication() {
            this.myMap = new HashMap();
        }

        public HashMap getMyMap() {
            return myMap;
        }
    }

  • 完成此操作后,现在您可以通过调用getApplication()从任何活动中访问地图。确保将应用程序强制转换为MyCustomApplication以正确使用它,并访问getMyMap()

方法

如果你需要进一步的澄清,请告诉我

票数 1
EN

Stack Overflow用户

发布于 2011-08-26 14:45:02

您可以尝试创建一个自定义的Application对象,并将HashMap设置为该应用程序对象上的一个字段。然后,您的所有服务和活动都可以在那里访问它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7200940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档