(我知道這個問題以前被問過很多次,但我讀過的答案都沒有幫助。)
在我旋轉我的設備后,我的片段被重新創建,但在 onCreate/onViewStateRestored/etc 中收到了 Bundle。始終為空。該片段具有有效的 ID,并且 retainInstance 設定為 false。
我正在寫入提供給 onSaveInstanceState 方法的 Bundle,該方法在設備旋轉時按預期呼叫。輪換之后,所有預期的生命周期回呼函式也會被呼叫(onCreate、onActivityCreated、onViewStateRestored 等)。但是,提供的 Bundle 在每種情況下都為 null。
我在這個主題上讀到的所有內容都表明片段應該接收寫入 onSaveInstanceState 的 Bundle。我能想到的唯一可能與眾不同的是片段位于導航圖組件內。請注意,我沒有覆寫活動中的 onSaveInstanceState。
什么可能導致我的片段的 Bundle 在旋轉后為空?
uj5u.com熱心網友回復:
事實證明,onCreate在 Activity 中覆寫了,并將 null 而不是 savedInstanceState 傳遞給super.onCreate。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/381061.html
標籤:安卓 android-fragments android-生命周期 屏幕旋转
上一篇:來自后臺的雙片段實體
