从另一个的 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.
我正在尝试从原始片段的 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.