FragmentManager popBackStack不起作用 - Bug?

Nic*_*aus 7 android android-fragments android-sdk-tools

我正在使用此代码清理我的后台到我的主视图:

while(mFragmentManager.getBackStackEntryCount() > 1) {
            mFragmentManager.popBackStack(null, 0);
}
Run Code Online (Sandbox Code Playgroud)

我很确定这个代码以前工作过,但现在backstack计数没有改变,并且没有删除Fragment,这会导致内存不足异常,因为while循环一直在运行.

有没有人知道,如果它有什么问题,或者最新版本的SDK工具中有错误.我不知道是什么导致了这个问题.

cde*_*nge 11

你可能正在寻找popBackStackImmediate().这会立即执行后栈弹出.


Ale*_*lex 7

你也可以用.executePendingTransactions();之后popBackStack();


Com*_*are 6

我当然不会认为这popBackStack()会立即生效,你的循环似乎会这样做.