代码之家  ›  专栏  ›  技术社区  ›  Squonk

在活动之间共享对象

  •  8
  • Squonk  · 技术社区  · 14 年前

    我有一个有四个活动的天气应用程序。主/启动程序活动是“不可见的”,使用。。。

    android:theme=“@android:style/theme.Translucent.NoTitleBar”`

    …仅用于在启动其他活动之前执行一些检查(这是否是新安装,网络连接是否可用等)。其他的活动是面向用户界面的-两个简单地显示从一个网站上提取的天气数据,第三个提供一个位置“选择器”,以便用户可以选择显示天气的区域。

    然而,这四个活动都使用了WeatherHelper对象,它基本上完成了从检查可用的SD卡存储到维护首选项和拉取/格式化网站页面的所有工作。

    那么,我的问题是……什么是拥有一个WeatherHelper实例的最佳方法,它可以被多个活动使用,在我的情况下,在哪里/如何创建它最好?

    我做了很多年的OO程序员,但我对Android和设计概念还很陌生——过去几周我在Android开发者网站上读了很多东西,但我在决定这一点时已经停滞不前了。

    感激地接受了任何想法。

    2 回复  |  直到 14 年前
        1
  •  12
  •   dhaag23    14 年前

    我会在你身上储存共享信息 Application 反对。将其子类化并在其中添加任何额外的初始化和数据。您可以使用 getApplication() 从您的活动中,您可以将其转换为专用版本并访问共享数据。

    如果可能的话,我还将避免启动特殊的启动活动,并在应用程序的onCreate()覆盖中完成工作。

        2
  •  1
  •   naXa stands with Ukraine    11 年前

    好吧,你的问题已经被回答了,但是它似乎更简单地实例化你的 WeatherHelper 中的对象 onCreate() Activity 有发射装置的意图 气象助手 静态的。