繁体   English   中英

设备轮换后,savedInstanceState 包始终为 null

[英]savedInstanceState bundle is always null after device rotation

(我知道这个问题以前被问过很多次,但我读过的答案都没有帮助。)

旋转我的设备后,我的片段被重新创建,但在 onCreate/onViewStateRestored/etc 中收到了 Bundle。 始终为 null。 片段有一个有效的 ID,retainInstance 设置为 false。

我正在写入提供给 onSaveInstanceState 方法的 Bundle,该方法在设备旋转时按预期调用。 在轮换之后,所有预期的生命周期回调也会被调用(onCreate、onActivityCreated、onViewStateRestored 等)。 但是,每个案例提供的 Bundle 都是 null。

我在这个主题上读到的所有内容都表明片段应该接收在 onSaveInstanceState 中写入的 Bundle。 我唯一能想到的可能不寻常的是片段位于导航图组件内。 请注意,我没有在活动中覆盖 onSaveInstanceState。

什么可能导致我的片段的 Bundle 在旋转后成为 null?

事实证明,在 Activity 中覆盖onCreate并将 null 而不是 savedInstanceState 传递给super.onCreate

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM