0

我有一个片段,其布局具有非唯一 ID(布局重复多次)。例如:

LinearLayout (vertical)
    FrameLayout (id = R.id.always_the_same)
    FrameLayout (id = R.id.always_the_same)
    FrameLayout (id = R.id.always_the_same)

我无法使 ID 唯一,因为它们是单独从 XML 文件加载的。

对于每个 FrameLayouts,我想在里面添加一个子片段。我尝试从外部片段的方法中多次调用以下内容onCreateView,但它将所有子片段添加到第一个 FrameLayout。

this.getChildFragmentManager().beginTransaction()
      .add(R.id.always_the_same, MyChildFragment.newInstance(), "tag")
      .commit();

如何指定将片段添加到哪个 FrameLayout?还是我要解决这一切都错了,应该使用嵌套片段以外的东西?

4

1 回答 1

0

好的,找到了解决方法:

在外部片段的onCreateView方法中,我没有直接添加片段,而是将具有唯一 ID 的占位符布局添加到 FrameLayouts。然后在外部片段的onStart方法中,我使用那些唯一的 ID 来添加片段。

于 2013-06-24T19:02:23.043 回答