位置: 编程技术 - 正文

onSaveInstanceState和onRestoreInstanceState触发的时机

编辑:rootadmin
当某个activity变得“容易”被系统销毁时,该activity的onSaveInstanceState就会被执行,除非该activity是被用户主动销毁的,例如当用户按BACK键的时候。 注意上面的双引号,何为“容易”?言下之意就是该activity还没有被销毁,而仅仅是一种可能性。这种可能性有哪些?通过重写一个activity的所有生命周期的onXXX方法,包括onSaveInstanceState和onRestoreInstanceState方法,我们可以清楚地知道当某个activity(假定为activity A)显示在当前task的最上层时,其onSaveInstanceState方法会在什么时候被执行,有这么几种情况: 1、当用户按下HOME键时。 这是显而易见的,系统不知道你按下HOME后要运行多少其他的程序,自然也不知道activity A是否会被销毁,故系统会调用onSaveInstanceState,让用户有机会保存某些非永久性的数据。以下几种情况的分析都遵循该原则 2、长按HOME键,选择运行其他的程序时。 3、按下电源按键(关闭屏幕显示)时。 4、从activity A中启动一个新的activity时。 5、屏幕方向切换时,例如从竖屏切换到横屏时。 在屏幕切换之前,系统会销毁activity A,在屏幕切换之后系统又会自动地创建activity A,所以onSaveInstanceState一定会被执行。 总而言之,onSaveInstanceState的调用遵循一个重要原则,即当系统“未经你许可”时销毁了你的activity,则onSaveInstanceState会被系统调用,这是系统的责任,因为它必须要提供一个机会让你保存你的数据(当然你不保存那就随便你了)。 至于onRestoreInstanceState方法,需要注意的是,onSaveInstanceState方法和onRestoreInstanceState方法“不一定”是成对的被调用的,onRestoreInstanceState被调用的前提是,activity A“确实”被系统销毁了,而如果仅仅是停留在有这种可能性的情况下,则该方法不会被调用,例如,当正在显示activity A的时候,用户按下HOME键回到主界面,然后用户紧接着又返回到activity A,这种情况下activity A一般不会因为内存的原因被系统销毁,故activity A的onRestoreInstanceState方法不会被执行。

推荐整理分享onSaveInstanceState和onRestoreInstanceState触发的时机,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

onSaveInstanceState和onRestoreInstanceState触发的时机

另外,onRestoreInstanceState的bundle参数也会传递到onCreate方法中,你也可以选择在onCreate方法中做数据还原。

Android Volley框架的使用(三) Volley框架的学习马上就可以杀青了,哈哈,有木有点小激动呢,之所以将这个框架分成三篇来写,而且涉及的细节比较多,是因为考虑到后面还要学习

欢迎使用CSDN-markdown编辑器 Android项目实训记录(一)学校里来了某某IT培训机构(为了避免广告嫌疑,就不曝名字了)的讲师来为我们进行实训,对于我这种从未接触过正规项目

自定义ListView使用Volley获取数据 这是作为Volley框架使用的练习,如果对Volley框架的使用还不太熟悉,建议先看前三篇文章:AndroidVolley的使用(一)AndroidVolley的使用(二)AndroidVolley的

标签: onSaveInstanceState和onRestoreInstanceState触发的时机

本文链接地址:https://www.jiuchutong.com/biancheng/382294.html 转载请保留说明!

上一篇:Android之Adapter用法总结(安卓中adapter)

下一篇:Android Volley框架的使用(三)(androidmvvm框架)

  • 公司全额承担个税怎么申报
  • 个人所得税退税操作流程
  • 新个税年终奖计算公式
  • 申报更正日期改变会导致逾期申报吗
  • 工业企业成本会计核算的对象是什么
  • 高新技术企业费用认定
  • 季度奖需要交税吗
  • 生产加工型企业经营范围
  • 年末增值税结转账务处理流程
  • 小规模纳税人财务报表是按季还是按月申报
  • 冲减本年利润
  • 承兑差额怎么做账
  • 普通发票红字冲销发票怎么操作
  • 交通违章罚款有优惠吗
  • 个人投资借款长期不还要缴纳个人所得税吗?
  • 国际贷款平台
  • 增值税普通发票怎么开
  • 所得税弥补以前年度
  • 免税单位无租使用纳税单位土地
  • 个税手续费返还计入哪个科目
  • 税法三流合一是哪一项法律依据
  • 开票软件上怎么抄税
  • 为什么利息收入是负数
  • 滴滴开票是专票还是普票
  • windows伪装电脑mac
  • 承兑汇票公对公多久到账
  • 个人以房产投资一人有限公司时,房产要开发票吗
  • 一次性开票分期确认收入如何纳税申报
  • deepin怎么使用
  • 关于工程材料的质量控制说法正确的是
  • php字符串型数据的定义方式
  • 提供劳务收入如何核算
  • 云杉树下面长什么蘑菇
  • 会计记账的内容
  • 企业雇佣临时工个税
  • 南奥索峰的Lac d'Ayous小屋,法国 (© Eneko Aldaz/Offset by Shutterstock)
  • framework4.0怎么打开
  • 兼职老师工资怎么扣税
  • 查补收入是否享受免税政策
  • php判断数据类型
  • 法人不发工资可以吗
  • 企业购进生产设备的会计分录
  • sql注入攻击代码
  • 一次性计入当期成本费用是什么意思
  • 待处理财产损益借方增加还是减少
  • 机关单位工会经费的来源
  • 收到国家电网信息但号码不是的
  • 长期股权投资的账务处理
  • 蔬菜批发成本怎么核算
  • 暂估入账应该如何操作
  • 无形资产如何做账务处理
  • 一年的系统服务费多少钱
  • 研发费用加计扣除的条件
  • 收银员长款短款什么意思
  • 固定资产盘点基本情况
  • 金蝶现金银行存款账怎么记账
  • 什么是现金流量表分析的重点
  • 海尔笔记本最新款
  • diskgenius分区linux
  • smon进程
  • macbook的dock栏怎么不见了
  • Linux下SSH Session复制功能实现方法
  • WARNING: /tmp: File system full, swap space limit exceeded的解决办法
  • windowsxp打不开网页怎么办
  • win10系统的优化
  • win8怎么打开蓝牙设置
  • Win7旗舰版电脑亮度怎么调节?
  • Win10年度升级版Redstone来了:更加个人化的计算体验
  • 批处理 /b
  • 安卓匿名电话软件
  • js秒数转时间
  • JavaScript入门教程
  • python数据类型总结
  • js获取设备
  • 北京病退流程
  • 福建省国税局领导班子介绍
  • 成都网上税务局
  • 江苏网上税务局官网
  • 马云交了多少税费
  • 国家税务总局制服
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设