popBackStackImmediate
全部标签 我试图避免使用此方法将相同的fragment添加到backStack:publicstaticvoidreplaceFragment(FragmentManagerfragmentManager,Fragmentfragment,BooleanaddToBackStack){StringbackStateName=fragment.getClass().getName();booleanfragmentPopped=fragmentManager.popBackStackImmediate(backStateName,0);if(addToBackStack&&!fragmentPop
我目前正在使用一个ActionBarActivity和多个Fragments,例如ListFragment和MapFragment,它们在单个FrameLayoutView中交换。ActionBarActivity自动替换/提交fragmentA。然后,当用户点击按钮时,托管Activity替换/提交新的不同fragmentB。我的目标是让用户在按下后立即返回fragmentA后退按钮。现在有一些代码。主ActivitypublicclassMainActivityextendsActionBarActivityimplementsStopFragment.OnFragmentInte
我目前正在使用一个ActionBarActivity和多个Fragments,例如ListFragment和MapFragment,它们在单个FrameLayoutView中交换。ActionBarActivity自动替换/提交fragmentA。然后,当用户点击按钮时,托管Activity替换/提交新的不同fragmentB。我的目标是让用户在按下后立即返回fragmentA后退按钮。现在有一些代码。主ActivitypublicclassMainActivityextendsActionBarActivityimplementsStopFragment.OnFragmentInte
谁能告诉我popBackStackImmediate和popBackStack之间的区别?我真的不明白,另外popBackStack的第二个中的“标志”0(零)是什么意思?非常感谢你们的帮助... 最佳答案 popBackStackImmediate()将在调用中立即执行弹出命令。调用后可以立即验证其结果。它有点慢,因为所有弹出操作都是在调用中执行的。popBackStack()将在下一个事件循环周期(即下一个绘制阶段)内执行弹出命令。所以它与其余代码是异步的。这意味着FragmentTransaction将在执行后从后台堆栈中删除