因为有些数据是用 Intent 传递的,但是如果因为一些原因如 configChanges 覆盖不到的一些情况导致 Activity 重建了,但是 Intent 又没有重建,这会报一些空指针异常!
当然这个问题很好解决,但是我实在想不通 Android 这里的设计为什么不一并重建一下 Intent 复原其内容。
1
w568w 20 小时 54 分钟前
这个问题的答案就写在配置变更的介绍文档里啊: https://developer.android.com/guide/topics/resources/runtime-changes?hl=zh-cn
划重点: > 您可以采用三种主要方法在重新创建 Activity 的过程中保留相关状态。采用哪种方法取决于您要保留的状态类型: > - 本地持久性存储 > - 保留对象(如 ViewModel 实例) > - SavedInstanceState 最后一种就是你要找的。具体文档示例在:《保存和恢复瞬时界面状态》 https://developer.android.com/guide/components/activities/activity-lifecycle?hl=zh-cn#saras |