我有一個片段,我有一個標籤添加這樣的:片段交易移除
getSupportFragmentManager().beginTransaction().add(R.id.fragment_container,fragment,fragment_tag).commit();
在某些時候,在另一個片段,我需要刪除此片段,所以我呼籲:
fragment = getActivity().getSupportFragmentManager().findFragmentByTag(fragment_tag);
if(fragment != null && fragment.isAdded())
fragmentManager.beginTransaction().remove(fragment).commit();
從理論上講,下一次我打電話findFragmentByTag()
我剛剛刪除的片段,我應該得到一個空,但下一次我稱之爲:
fragment = getActivity().getSupportFragmentManager().findFragmentByTag(fragment_tag);
if(fragment != null)
的,如果因此它實際上找到與該標記片段說法是正確的!
我的問題是,我如何COMPLETELY刪除一個片段?
考慮到要移除的碎片可能不在頂層,這意味着popBackStack()
不是解決方案。
感謝您的關注。檢查我編輯的問題。該片段可能不返回堆棧 – Ricardo
你嘗試它的頂部?如果你想立即刪除它,你可以調用popackStackImmeditely(); – Ogbe
我確實嘗試過。我已經在尋找其中存在此解決方案,但它不能幫助我的情況 – Ricardo