从另一个的 onCreate() 方法打开一个新片段

Opening a new fragment from the onCreate() method of another

我正在尝试从原始片段的 onCreate() 方法自动打开一个新片段。我通过 How do i open a new fragment from another fragment 找到了这段代码。我唯一感到困惑的是资源元素。 R.id.layout 在这种特殊情况下指的是什么?被替换的资源是什么?它要求 containerViewId。那是什么?

    TemplateFragment nextFrag = new TemplateFragment();
    this.getFragmentManager().beginTransaction()
            .replace(R.id.layout, nextFrag, TAG_FRAGMENT)
            .addToBackStack(null)
            .commit();

What does R.id.layout refer to in this particular case? What is the resource being replaced?

Fragments,当他们想要显示一些东西时,需要一个容器来将 onCreateView 的结果膨胀到其中。当然这个容器也应该是当前屏幕上 activity 的一部分,否则你将看不到任何东西

这是放置片段的布局容器的 ID,即:

        <FrameLayout
            android:id="@+id/layout"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

它应该存在于您的活动布局中 xml。

在方法 javadoc 中你有:

* @param containerViewId Identifier of the container whose fragment(s) are
* to be replaced.