2014-04-14 59 views
0

您好我正在開發android應用程序,我正在使用片段並推回堆棧。所以我的情景是這樣的我有片段A,B,C,D,並且我按照以下順序將它們推入A→B→C→D,並且我想要刪除D和C並將B在上面。有什麼方法可以將所有的東西一起移除,並將一個特定的片段放在堆棧頂部。像從後面的堆棧彈出到xyz片段標籤。有沒有辦法做到這一點。需要幫助謝謝。刪除堆棧中的所有片段達到特定片段android

回答

2

你想這樣的:FragmentManager.popBackStack(int id, int flags)

您需要保存的,增加了片段B.然後再打getFragmentManager().popBackStack(commitId, 0)交易FragmentTransaction.commit()返回的值;

+0

嗨Karakuri謝謝你的快速重播。我在Google文檔上檢查了這種方法。但是我能夠正確理解它的使用。你能解釋它是如何工作的嗎?謝謝你的幫助... – nilkash

+0

當然。第一個參數是一個整數ID。 'FragmentTransaction.commit()'返回一個整數值。這個值是調用'popBackStack(id,flags)'時要使用的ID。在您的代碼中查找將Fragment B添加到您的活動的事務,並確保存儲'commit()'返回的值。第二個參數只是一個標誌,告訴FragmentManager是否只想將事務彈回到ID(獨佔),或彈出ID(也包括),這會將您帶回片段A.傳遞零來指定獨佔。 – Karakuri