2017-06-25 24 views
0

我想過渡片段A到B. fragement片段 交易碼是當FragmentTransaction調用show方法?

FragmentTransaction ft = getFragmentManager().beginTransaction(); 
ft.hide(this); 
ft.add(R.id.front_side_container , detail); 
ft.addToBackStack(null); 
ft.commit(); 
在片段

A碼,ft.hid(this) < - I隱藏片段片段B A

代碼

getFragmentManager().popBackStack(); 

當致電popBackStack(),我不叫FrangmentTransaction.show()

但出現片段A.爲什麼?我不叫show()

是否正確自動調用show()何時執行popBackStack()

回答

0

片段框架會自動處理顯示返回堆棧的最後一個元素,當你調用「popBackStack()」,所以是的,它是100%正確的。如果你調用.hide(),它會調用.show(),如果你沒有調用.hide()(意思是舊的片段被銷燬),它會創建一個全新的,並顯示。

相關問題