Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓回到活动中';s片段_Android_Android Fragments_Navigation_Back - Fatal编程技术网

Android 安卓回到活动中';s片段

Android 安卓回到活动中';s片段,android,android-fragments,navigation,back,Android,Android Fragments,Navigation,Back,安卓系统使用后退图标或ActionBar上的图标提供用户导航 getActionBar().setDisplayHomeAsUpEnabled(true); 而AndroidManifest.xml <!-- since 4.0 android:parentActivityName=".MainActivity" > --> <meta-data android:

安卓系统使用后退图标或ActionBar上的图标提供用户导航

getActionBar().setDisplayHomeAsUpEnabled(true);
而AndroidManifest.xml

        <!--
        since 4.0 
        android:parentActivityName=".MainActivity" >
        --> 
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".activity.MainActivity" />

现在如果我的活动有3个片段1-2-3, 如何启用返回导航返回3->2->1


当用户按下返回键时,如何转到上一个片段,而不是活动?您可以按名称弹出片段。在向后堆栈添加片段时,只需给它们一个名称

fragmentTransaction.addToBackStack("fragB");
fragmentTransaction.addToBackStack("fragC");
然后在Fragment_C中,使用名称ie.弹出后堆栈。。fragB和include
POP\u BACK\u STACK\u include

someButtonInC.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {

        FragmentManager fm = getActivity()
                .getSupportFragmentManager();
        fm.popBackStack ("fragB", FragmentManager.POP_BACK_STACK_INCLUSIVE);
    }
});

您可以按名称弹出片段。在向后堆栈添加片段时,只需给它们一个名称

fragmentTransaction.addToBackStack("fragB");
fragmentTransaction.addToBackStack("fragC");
然后在Fragment_C中,使用名称ie.弹出后堆栈。。fragB和include
POP\u BACK\u STACK\u include

someButtonInC.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {

        FragmentManager fm = getActivity()
                .getSupportFragmentManager();
        fm.popBackStack ("fragB", FragmentManager.POP_BACK_STACK_INCLUSIVE);
    }
});

请注意,在一个应用程序中可能有几个可访问的片段。因此,您需要一个可靠且无误的解决方案。我在页面上找到了一个完整的解释性解决方案,其中包含相关代码。

请注意,应用程序中可能有几个可访问的片段。因此,您需要一个可靠且无误的解决方案。我在页面上找到了一个完整的解释性解决方案,其中包含了相关的代码