2014-03-28 66 views
1

我正在與另一個替換的片段:不的onSaveInstanceState上調用片段

FragmentTransaction transaction = mFragmentManager.beginTransaction(); 

    transaction.setCustomAnimations(R.anim.enter, R.anim.exit, R.anim.pop_enter, R.anim.pop_exit); 
    transaction.replace(R.id.main_container, nextFragment, nextFragment.getClass().toString()); 
    transaction.addToBackStack(nextFragment.getClass().toString()); 
    transaction.commit(); 

但是,被替換的片段這就是,它的onSaveInstanceState不被調用。我究竟做錯了什麼? 「

回答

1

」在片段中,所有生命週期回調都直接綁定到它們的父Activity上,因此onSaveInstanceState在其父Activity被調用onSaveInstanceState時在Fragment上調用。

看看這個帖子:

FragmentActivity onSaveInstanceState not getting called

+0

什麼是我在這種情況下再選擇? – 0xSina

+0

你想用onSaveInstanceState()來做什麼? – kgmaize

+1

在我的活動中,我將一步一步呈現。每一步都在一個片段中。當用戶按下時,我通過上面的代碼(在我的問題中)顯示下一個片段。但是,當用戶按下後,會出現上一步(片段),但它是一個新實例。這就是爲什麼我要保存狀態,以便我可以向用戶展示他在進入下一步之前輸入的內容。 – 0xSina

相關問題