情景:在使用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
相关推荐
正经教主1 小时前
【咨询】Android Studio 第三方手机模拟器对比【202511】Jomurphys2 小时前
网络 - 缓存似霰3 小时前
安卓14移植以太网&&framework-connectivity-t 编译问题Android-Flutter3 小时前
kotlin - 显示HDR图(heic格式),使用GainMap算法,速度从5秒提升到0.6秒雨白4 小时前
协程进阶:协作、互斥与共享状态管理用户41659673693554 小时前
深度剖析 Android Context:启动 Activity 与 View 创建的“内幕”方白羽4 小时前
Android 唯一UUID方案一个小狼娃4 小时前
Android集成Unity避坑指南川石课堂软件测试4 小时前
Python | 高阶函数基本应用及Decorator装饰器