Android开发:巧用onSaveInstanceState与onRestoreInstanceState保存和恢复App状态
`onSaveInstanceState()`方法是在Activity的生命周期中调用的,当Activity即将被系统销毁时,系统会调用这个方法,以便Activity可以保存当前的状态,以便在下次恢复时可以恢复到原来的状态。 在`onSaveInstanceState()`方法中,可以创建一个`Bundle`对象,然后将需要保存的数据保存到这个`Bundle`对象中。这些数据可以是Activity的成员变量,也可以是从其他地方获取的数据。 例如,如果Activity中有两个成员变量`mTitle`和`mContent`,并且需要保存这两个变量的值,可以在`onSaveInstanceState()`方法中这样写: ```java @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putString("title", mTitle); outState.putString("content", mContent); } ``` 这样,当Activity被系统销毁时,系统会调用`onSaveInstanceState()`方法,然后将保存的数据保存到`Bundle`对象中。 当Activity恢复时,系统会调用`onCreate()`方法和`onRestoreInstanceState()`方法。在`onRestoreInstanceState()`方法中,可以使用`Bundle`对象恢复保存的数据。 例如,如果Activity中有两个成员变量`mTitle`和`mContent`,并且在`onCreate()`方法中需要恢复这两个变量的值,可以在`onRestoreInstanceState()`方法中这样写: ```java @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); mTitle = savedInstanceState.getString("title"); mContent = savedInstanceState.getString("content"); } ``` 这样,当Activity恢复时,系统会调用`onRestoreInstanceState()`方法,然后使用`Bundle`对象恢复保存的数据。 ######[AI写代码神器 | 364点数解答 | 2023-11-08 00:25:23]
- RealtimeMonitoringFragment 代码片段:Android 实时监控功能核心代码剖析(字节豆包 | 30点数解答 | 2024-10-12 10:31:18)327
- 揭秘:Android实时监控片段(RealTimeMonitoringFragment)代码实现(GPT | 531点数解答 | 2024-10-12 10:32:25)293
- AIDE编写Xposed软件:参考代码教你拦截Smail类方法名(阿里通义 | 649点数解答 | 2024-10-12 00:15:48)336
- Photoshop CS6 图像转手绘草图脚本代码优化与注意要点(字节豆包 | 164点数解答 | 2025-03-02 23:18:21)298
- 基于商品效期规则的本地网页管理系统,无需服务器和网络,单HTML文件本地浏览器运行。 商品效期规则: 保质期≥12个月:临期提醒提前45天,下架提前5天(含过期提醒) 6个月≤保质期<12个月:临期提醒提前20天,下架提前3天(含过期提醒) 3个月≤保质期<6个月:临期提醒提前15天,下架提前3天(含过期提醒) 30天≤保质期<3个月:临期提醒提前10天,下架提前3天(含过期提醒) 15天≤保质期<30天:临期提醒提前5天,下架提前3天(含过期提醒) 保质期≤15天:临期提醒提前3天,下架提前2天(含过期提醒) 一定要遵守上门这个规则,状态以上位置,需要一一对应。 严格遵循 6 级保质期规则 → 自动计算「临期/下架/过期」状态(绿/黄/红) 产品管理模块: 商品列表展示:序号、名称、类别、生产日期、保质期、到期日、剩余天数(带单位)、状态(正常/临期/下架(一定要注意,选择类型要根据选择显示),对应绿/黄/红颜色)、操作(编辑、删除、备注),默认按照后添加先排,还需要根据一些条件,比如剩余天数可以筛选排序。 功能:添加商品(弹窗形式,保质期仅支持"XX天"或"XX月"格式)(讯飞星火 | 2053点数解答 | 2026-04-01 23:04:48)48
- Android开发:巧用onSaveInstanceState与onRestoreInstanceState保存和恢复App状态(阿里通义 | 364点数解答 | 2023-11-08 00:25:23)171
- 智能电话窗口按钮1弹起:获取坐标与手机IMEI码待处理(GPT | 208点数解答 | 2024-09-12 16:36:31)389
- Android Studio开发:打造多页面交互美团选购App,附代码示例与注意要点! (字节豆包 | 293点数解答 | 2024-11-29 01:16:56)329
- Android Studio 开发:功能完备且流畅运行的美团选购 APP 大揭秘!(GPT | 291点数解答 | 2024-11-29 01:17:30)255
- Ionic框架实战:手把手教你打造功能完备的移动图书App(讯飞星火 | 1899点数解答 | 2024-06-15 21:33:21)338
- Python 代码:Kivy 与 UnityPy 结合开发,注意依赖、路径与异常处理!( | 262点数解答 | 2024-12-01 17:07:07)345
- HTML代码解析:<title>リアンモ💞</title>背后的细节(字节豆包 | 41点数解答 | 2024-12-06 13:15:17)269