在活动之间保留片段状态

Axe*_*cia 15 android android-fragments android-3.0-honeycomb android-activity

它可以保留一个Fragment活动之间?

假设我在左侧放置A了片段活动,在右侧放置了F_Left片段F_Right.如果我想发布一个新的活动并保持片段F_Left......我该怎么做?

我可以F_Left在活动之间保留片段状态吗?

请注意,我想启动一个新的Activity,因为Fragment F_Left是我的应用程序菜单,Fragment F_Right完全改变了用户操作的上下文...而且我的应用程序有很多操作,所以每次操作都有一个Activity是有意义的.

我知道它可以保留Fragment在一个内部Activity,但由于Fragment生命周期与容器密切相关,Activity我不知道这是否可能保持Fragment活动之间的状态.

qui*_*int 34

从API Level 13(HONEYCOMB_MR22011年6月)开始,您可以跨活动保存和恢复片段的状态.

您可以SavedState像处理任何其他对象一样跨对象持久保存对象; 一种方法是子类Application如上所示(appState是我们子类的实例).

  • 好答案.由于`SavedState`实现了'Parcelable`,你也可以通过`Bundle.putParcelable()`传递状态,而不是将它粘贴在`Application`实例中. (10认同)

Com*_*are 3

如果我想启动一个新的 Activity 并保留 Fragment F_Left...我该怎么做?

不要启动新活动。

我可以在活动之间保留 Fragment F_Left 状态吗?

不是自动的。这不是同一个片段。您将在活动之间传递数据以供片段使用,这与没有任何片段时没有什么不同。