java – 如果我在XML布局中声明一个片段,我如何传递它一个Bundle?

我有一个活动,我已经替换了一个片段。该活动采取了一个Intent,它有一些关于活动应该显示的数据的额外信息。

现在我的Activity只是一个Fragment的一个包装器做同样的工作,如果我声明的片段与XML的标签,如何获得该bundle的Fragment?

如果我使用一个FragmentTransaction将Fragment放入一个ViewGroup,我会有机会在Fragment构造函数传递这个信息,但我想知道的情况下,片段是在XML中定义的。

最佳答案

Now that my Activity is just a wrapper around a Fragment that does the same work, how do I get that bundle to the Fragment if I declare the fragment in XML with the tag?

你不能。

但是,欢迎您在FragmentManager上调用findFragmentById()以检索通胀后的片段,然后调用片段上的某个方法将数据与其关联。虽然显然不能是setArguments(),你的片段可以安排通过一些其他方式(onSaveInstanceState(),setRetainInstance(true)等)通过配置更改保持数据本身。

转载注明原文:java – 如果我在XML布局中声明一个片段,我如何传递它一个Bundle? - 代码日志