【问题标题】:How to remove Fragments from backstack如何从 backstack 中删除 Fragments
【发布时间】:2015-06-09 09:45:53
【问题描述】:

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

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

在 Success 片段上点击 SubmitMore 按钮后,我想从后台删除 Frag1、Frag2 和 SubmitFrag 并返回 StartFrag。该怎么做?

【问题讨论】:

    标签: android fragment back-stack fragment-backstack


    【解决方案1】:

    你可以试试这个

    FragmentManager fm = getFragmentManager(); 
    int count = fm.getBackStackEntryCount();
    for(int i = 0; i < count; ++i) {    
    fm.popBackStack();
    }
    

    【讨论】:

      【解决方案2】:

      试试这个

         mFragmentManager.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE); 
      

      【讨论】:

        【解决方案3】:

        你可以试试这个

         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")
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-10-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多