情景:在使用app过程中更改系统主题(比如从浅色主题改为深色主题),这时activity销毁重建了(即走了onPause、onStop、onSaveInstanceState、onDestroy、onCreate、onRestoreInstanceState、onStart、onResume的生命周期),所以没有保存下来的数据丢失了。
解决办法:在onSaveInstanceState时存储需要保存的数据,然后在onRestoreInstanceState拿取到之前保存的数据。
额外说明:此方法只适用于用java写的项目,不包括kotlin的项目(因为kotlin项目通常会用jetpack)。
新增疑问:为什么editText里的内容在界面重绘后没有丢失呢?这是因为Android框架会自动保存和恢复EditText的内容状态。当界面发生重新绘制时,Android会自动保存EditText的内容状态,并在重新绘制后恢复其内容,以确保用户输入的内容不会丢失。
【Android】更改手机主题导致app数据丢失问题
熊爱吃鱼2024-03-01 18:56
相关推荐
android_xc18 小时前
Android Studio适配butterknife遇到的坑2501_9159184118 小时前
uni-app 项目 iOS 上架效率优化 从工具选择到流程改进的实战经验00后程序员张18 小时前
如何在不同 iOS 设备上测试和上架 uni-app 应用 实战全流程解析米豆同学20 小时前
SufraceFlinger图像合成原理(3)-SurfaceFlinger中Layer的创建和销毁米豆同学20 小时前
SufraceFlinger图像合成原理(2)-SurfaceFlinger与应用进程间的通信用户20187928316720 小时前
uses-library:系统应用报NoClassDefFoundError问题叽哥20 小时前
Kotlin学习第 4 课:Kotlin 函数:从基础定义到高阶应用mg66820 小时前
安卓玩机工具----安卓“搞机工具箱”最新版 控制手机的玩机工具诺诺Okami20 小时前
Android Framework- Activity启动2米豆同学20 小时前
SystemUI plugin 开发