【问题标题】:Opening a new fragment from the onCreate() method of another从另一个片段的 onCreate() 方法打开一个新片段
【发布时间】:2015-12-20 10:36:00
【问题描述】:

我正在尝试从原始片段的 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();

【问题讨论】:

    标签: java android android-fragments android-intent android-fragmentactivity


    【解决方案1】:

    这是放置片段的布局容器的 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.
    

    【讨论】:

      【解决方案2】:

      在这种特殊情况下,R.id.layout 指的是什么?是什么 资源被替换?

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多