博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
saveInstallState参数使用详解(android activity状态保存和恢复)
阅读量:5163 次
发布时间:2019-06-13

本文共 1093 字,大约阅读时间需要 3 分钟。

转自:

写过Android程序的都知道Activity中有一个名称叫onCreate的方法。该方法是在Activity创建时被系统调用,是一个Activity生命周期的开始。可是有一点容易被忽视,就是onCreate方法的参数saveInstallState。因为在一般的程序开发中,很少用到这个参数。

onCreate方法的完整定义如下:
public void onCreate(Bundle saveInstallState){
super.onCreate(saveInstallState);
}
    从上面的代码可以看出,onCreate方法的参数是一个Bundle类型的参数。Bundle类型的数据与Map类型的数据相似,都是以key-value的形式存储数据的。
    从字面上看saveInstallState,是保存实例状态的。实际上,saveInstallState也就是保存Activity的状态的。那么,saveInstallState中的状态数据是从何处而来的呢?下面我们介绍Activity的另一个方法onSaveInstallState。
    onSaveInstallState方法是用来保存Activity的状态的。当一个Activity在生命周期结束前,会调用该方法保存状态。这个方法有一个参数名称与onCreate方法参数名称相同。如下所示:
public void onSaveInstallState(Bundle saveInstallState){
super.onSaveInstallState(saveInstallState);
}
    在实际应用中,当一个Activity结束前,如果需要保存状态,就在onSaveInstallState中,将状态数据以key-value的形式放入到saveInstallState中。这样,当一个Activity被创建时,就能从onCreate的参数saveInstallState中获得状态数据。
    状态这个参数在实现应用中有很大的用途,比如:一个游戏在退出前,保存一下当前游戏运行的状态,当下次开启时能接着上次的继续玩下去。再比如:电子书程序,当一本小说被阅读到第199页后退出了(不管是内存不足还是用户自动关闭程序),当下次打开时,读者可能已忘记了上次已阅读到第几页了,但是,读者想接着上次的读下去。如果采用saveInstallState参数,就很容易解决上述问题。

转载于:https://www.cnblogs.com/hnrainll/archive/2012/11/20/2779562.html

你可能感兴趣的文章
724.Find Pivot Index
查看>>
小牛必会之—monkey
查看>>
python3.6.3安装步骤,适用linux centos系统
查看>>
没有终结点在侦听可以接受消息的*这通常是由于不正确的地址或者 SOAP操作导致的...
查看>>
HTML5---15.网络接口
查看>>
接收xml请求流并解析字符串的例子
查看>>
中文字符串分隔的注意问题
查看>>
zip打包是去掉路径
查看>>
常用的经典jquery代码[转]
查看>>
正则判断
查看>>
转--RTP如何打包H264数据
查看>>
IOC及AOP实现原理
查看>>
CocoaPods安装和使用教程
查看>>
WordPress博客搭建与问题总结
查看>>
C#中 property 与 attribute的区别
查看>>
POJ 1988 Cube Stacking(带权并查集)
查看>>
VMware vSphere虚拟化-VMware ESXi 5.5组件安装过程记录
查看>>
HDU 4960 Handling the past 2014 多校9 线段树
查看>>
时间管理-未经思考的人生不值得过
查看>>
cf 749D Leaving Auction
查看>>