Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.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
Java Android:ft.remove()和popBackStack()之间的区别_Java_Android_Android Fragments_Fragmentmanager - Fatal编程技术网

Java Android:ft.remove()和popBackStack()之间的区别

Java Android:ft.remove()和popBackStack()之间的区别,java,android,android-fragments,fragmentmanager,Java,Android,Android Fragments,Fragmentmanager,我正在尝试从堆栈中删除一个片段。我正在使用以下代码: FragmentManager fm = getSupportFragmentManager(); if (fm != null) { FragmentTransaction ft = fm.beginTransaction(); Fragment currentFragment = fm.findFragmentById(R.id.my_id); if (currentFragment

我正在尝试从堆栈中删除一个片段。我正在使用以下代码:

FragmentManager fm = getSupportFragmentManager();
    if (fm != null) {
        FragmentTransaction ft = fm.beginTransaction();
        Fragment currentFragment = fm.findFragmentById(R.id.my_id);
        if (currentFragment != null) {
            ft.remove(currentFragment);
            ft.commit();
        }
    }
我需要用上面的代码调用popBackStack()吗

fm.popBackStack();
remove()
将只删除片段


popBackStack()
将删除当前片段,并将其替换为堆栈中的最后一个片段。要使其工作,您需要对最后一个片段事务执行
addToBackstack()
。但这不是你想做的,所以不要做

我想看看这个答案: