将值从一个活动传递到另一个活动的另一种方法

时间:2011-04-09 07:42:09

标签: android android-intent

通常我们通过Intent函数将android中的值从一个活动传递到另一个活动。是否有任何其他方法可以将值从一个活动传递到另一个活动没有Intent功能

3 个答案:

答案 0 :(得分:2)

是。创建一个扩展android.app.Application的类,然后在Manifest中将此类作为应用程序的名称

<application android:name=".ClassNameOfTheClassYouCreated"...>
    ...activities etc here...
</application>

现在,您创建的类是您的应用程序。只要应用程序正在运行,它的生命周期一直存在,它保存活动堆栈,您可以添加一些自定义字段来保存您的值。要从Application获取Activity个实例,请点击this.getApplication()

关于要重置的字段值的编辑(响应@hackbod的推荐):在单例上使用静态字段是保存全局值的另一种方法,但我发现建议的更优雅。在您提及重置值的情况下,这也可能发生在其他环境中(例如来电,方向更改),这会在使用之前提高消毒(或检查存在,随意调用它)值的需要。总是!

答案 1 :(得分:0)

信息流可以通过各种方式实现,您只需要一种保存和检索数据的方法。

您可以使用网络保存,然后通过静态类,文件存储,数据库甚至远程存储获取您希望它流动的数据。

意图是更好的方式。 Android创建它,所以使用它。 :)

答案 2 :(得分:0)

来自http://developer.android.com/guide/topics/providers/content-providers.html

  

内容提供商存储和检索数据并使其可供所有应用程序访问。它们是跨应用程序共享数据的唯一方式;所有Android软件包都无法访问。

     

如果您想公开自己的数据,您有两个选择:您可以创建自己的内容提供者(ContentProvider子类),也可以将数据添加到现有提供者 - 如果有一个控制相同类型的数据,您有权写入。