這個問題有兩個部分。正確的方法來關閉分段
假設我們有一個活動,然後是兩個片段:一個ListFragment和一個片段(當您從ListFragment中單擊一個項目時將顯示這個片段)。
第1部分
應該在哪裏我關閉片段?我的意思是從設計的角度來看什麼會被認爲是好的。我看到了兩種選擇:一種是在片段中聲明一個接口,然後讓它實現它的活動,我們稱它爲closeFragment()。這將是一種從片段與Dev Site中顯示的活動進行通信的方式。另一個可能非常簡單,正在調用getActivity()。getSupportFragmentManager()並使用管理器關閉它。
第2部分
我知道如何創建一個片段,並取代它,因爲它是在開發網站,但我對關閉一個疑慮。我應該如何關閉它?像下面的代碼是正確的嗎?假設片段被添加到BackStack。
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
getSupportFragmentManager().popBackStack();
transaction.remove(this);
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE);
transaction.commit();
非常感謝。