2017-09-26 108 views
0

我在一個活動中有幾個片段。當我在它們之間切換時,我想保存片段的狀態。但是活動不會重新創建,並且onSaveInstanceState不會調用。我可以以某種方式保存包,例如,在?保存碎片狀態

+0

可能重複[一次爲所有人,如何正確保存Fragments的實例狀態回棧?](https://stackoverflow.com/questions/15313598/once-for-all-how-to-correctly-save -instance-state-of-fragments-in-back-stack) – 0X0nosugar

回答

0

每次創建新片段時都要使用這樣的方法addToBackStack()

if (fragment == null) { 
     fragment = new MyFragmentClass(); 
     manager.beginTransaction() 
       .add(R.id.your_fragment_id, fragment) 
       .addToBackStack(null) 
       .commit(); 
    } 

片段將在提交後被記住,並且在稍後彈出堆棧時將反轉其操作。

+0

但如果我想要在捆綁包中保存更多數據該怎麼辦? – sandeor30r