2012-11-07 101 views
0

我是新來的android,我有一個片段,它通過onPause,destroyView,銷燬,但onSaveInstanceState永遠不會被調用。Android - Fragment不saveInstanceState

這是預期嗎?

如何保存狀態?

@Override 
public void onSaveInstanceState(Bundle outState) { 
    outState.putParcelable(KEY_CATEGORY, category); 
    super.onSaveInstanceState(outState); 
} 

回答

0

系統調用onSaveInstanceState當它即將從內存中刪除您的片段/創建它的任何理由。否則將不會被調用。

如果這是你的情況,onSaveInstanceState仍未被調用,你的片段的代碼片段可能會有所幫助。

由於省略了調用超類的此方法的這一行,因此發生了很多次。例如,像here一樣。確保你叫它。

+0

超級絕對被稱爲。我想也許問題是片段管理器從不重複使用該片段,因爲包含的視圖被刪除 – serenskye