3

有没有办法将捆绑包发送到 afragment而无需将其实际放入fragment容器中?我问是因为我想Strings从一个EditTexts输入字段中取出一些,然后稍后再调用它们fragment

我有这样的代码

Bundle bundle = new Bundle();
Fragment fragment = new Assessment_Fragment();
bundle.putString("company", companyName);
bundle.putString("project", projectName);
fragment.setArguments(bundle);

getFragmentManager().beginTransaction()
.setCustomAnimations(android.R.animator.fade_in, android.R.animator.fade_out)
.replace(R.id.header_fragment_container, fragment).commit();

在此代码中,我将捆绑与事务一起传递,但我也替换fragment了“header_fragment_container”中的现有内容。我不想那样做。我只想将捆绑的数据传递给指定的fragment. 当fragment最终调用它时,我将收到捆绑包。这可能吗?

4

1 回答 1

4

这可能吗?

当然。只需删除最后一个 Java 语句 ( getFragmentManager()....)。

现在,至于您创建片段是否明智,然后永远不要将其添加到片段管理器(无论是否带有 UI),那是另一回事。Java 支持很多类;Fragment只是其中之一。如果您需要通用数据容器,请选择重量较轻的东西,例如仅其Bundle本身。

于 2013-06-07T21:01:32.827 回答