【发布时间】:2011-06-22 21:48:32
【问题描述】:
我有一个使用片段的应用程序,我正在研究如何在具有双窗格的 Activity 和作为独立的 Activity 中使用相同的片段。仍然不确定完成此操作的最佳方法,但我注意到 FragmentManager 具有 putFragment 和 getFragment 函数。让我感到困惑的是,您必须为 get 和 put 函数提供一个 Bundle 作为参数。不同的活动如何具有相同的Bundle?显然,您可以将 Bundle 作为参数传递,但那时我觉得您只是把事情搞砸了。
那么什么是使用 getFragment 和 putFragment 的好场景呢?请附上Bundle参数说明。
【问题讨论】:
-
我知道
putFragment将与onSaveInstanceState一起使用以维护对片段的引用,如果活动在说方向更改或操作系统需要回收内存时被破坏,则在onCreate(...)中检索到的片段。最好知道什么时候您可能想要维护参考的示例。我刚刚完成了一个片段端口项目,我从来没有这样做过,尽管也许我应该这样做。 -
我有一个横向和纵向的双窗格布局,其活动在方向更改时重新创建。在方向更改时,我的片段确实会重新创建并加载到它们的容器中,因此如上所述,我没有发现使用
put|getFragment的必要性,因此任何何时使用的好例子都会很好。 -
android 令人难以置信的白痴架构让我丧命......