我一直想知道是否有一种方法可以从创建它们的不同活动中修改变量。准确地说,我想从 Activity 2 修改 Activity1 中的列表,有没有办法从其他活动中引用该列表?putExtra()
方法不接受 List 作为输入参数,我认为这也不startActivityForResponse()
是我想要的。我不知道是否存在某种共享变量或类似的东西。
有可能这样做吗?
提前致谢。
我一直想知道是否有一种方法可以从创建它们的不同活动中修改变量。准确地说,我想从 Activity 2 修改 Activity1 中的列表,有没有办法从其他活动中引用该列表?putExtra()
方法不接受 List 作为输入参数,我认为这也不startActivityForResponse()
是我想要的。我不知道是否存在某种共享变量或类似的东西。
有可能这样做吗?
提前致谢。
可能这不是一个很好的解决方案,但您可以做的是您可以将 DataManager 创建为保存数据链接列表的单个实例。在每个活动中,您都可以获得数据管理器的实例并更新其中的数据。
您可以将整个列表作为额外的传递,您只需要先使其成为可包裹的,从而对其进行序列化。
A Container for a message (data and object references) that can be sent through an IBinder. A Parcel can contain both flattened data that will be unflattened on the other side of the IPC
有点难以理解,但它真正所做的只是将数据扁平化为字符串/整数/其他原始类型,以便可以轻松传递。另一方面,它重新构建到您的列表结构中。
这是我做类似事情时使用的教程:
http://prasanta-paul.blogspot.ca/2010/06/android-parcelable-example.html