如何从后退栈中移除Fragment

3

有一个包含5个片段(向导)的活动。

StartFrag  -(start)-> Frag1 -(next)-> Frag2 -(next)-> SubmitFrag
-(submit)-> SuccessFrag.

在成功碎片上点击“提交更多”按钮后,我想从后台删除Frag1、Frag2和SubmitFrag,并返回StartFrag。如何实现?
3个回答

3
你可以尝试这个。
FragmentManager fm = getFragmentManager(); 
int count = fm.getBackStackEntryCount();
for(int i = 0; i < count; ++i) {    
fm.popBackStack();
}

3

试试这个

   mFragmentManager.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE); 

2

你可以尝试这个

 FragmentManager fm = getFragmentManager();
 FragmentTransaction ft=fm.beginTransaction();
 ft.add(R.id.group,startFrag,"");
 ft.addtoBackStack("startFrag");
 ft.commit();

    enter code here

 // add other 4 fragments here


 when you want to go startFrag on click of some button you can try below code.
 fm.popBackStack("startFrag",0);
 //where startFrag is the tag which you specify when you called
 //addtoBackStack("startFrag")

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接