2015-07-21 150 views
0

當添加活動,以堆棧的頂部,我可以做這樣的事情表明: How to bring an activity to foreground (top of stack)?把片段堆棧

不過,我有一個使用片段抽屜式導航。我通過下面這些代碼片段添加到我的背堆棧:

FragmentTransaction transaction = activity.getFragmentManager().beginTransaction(); 
       transaction.replace(R.id.main_fragment, new EntryFragment()); 
       transaction.addToBackStack(activity.mTitle.toString()); 
       transaction.commit(); 

的問題是,我現在需要採取的片段已經後退堆棧的一部分,並把它帶到頂端,丟棄所有片段當前超出它的堆棧。基本上,FLAG_ACTIVITY_REORDER_TO_FRONTFLAG_ACTIVITY_CLEAR_TOP標誌在使用活動時會執行哪些操作。

如何用碎片完成此操作?

回答

3

您可以用下面的方法返回Fragment在堆棧中的實例:

activity.getFragmentManager().popBackStackImmediate(tag, 0); 

注意,在你的FragmentTransaction您需要定義一個獨特的標籤爲你提交到每個Fragment堆疊並檢索該標籤以返回到此處的片段。