位置: 编程技术 - 正文

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框架)

  • 小规模纳税人缴纳增值税怎么算
  • 房产税如何交
  • 专票要写开户行和账号
  • 基本户如果没有资金往来
  • 增值税税控系统专用设备
  • 一般纳税人结转增值税的账务处理
  • 出口退税增值税账务处理
  • 消费税为什么要计入成本
  • 增值税需要计入入账价值吗
  • 用excel怎么制作思维导图
  • 免费更换配件如何做账
  • 无形资产应当按照公允价值进行初始计量吗
  • 支付单位结算卡年费计入什么科目
  • 债券分期还本利息怎么算
  • 冲减上年的所得税费用入什么科目?
  • 给分公司开发票由总公司付款怎么办?
  • 应返还财政额度是什么科目
  • 商业银行固定资产贷款
  • 高新技术企业技术转让所得
  • 案例分析一般纳税人的税负率怎么计算?
  • 水电费没有票怎么做账
  • 电子发票详见清单怎么开
  • 促销活动赠品应如何账务处理
  • 增值税专用发票有效期是多长时间
  • 办公室房租计入什么科目
  • 营业收入包括的项目有
  • 员工饭卡充值是哪个部门做
  • 财务费用包括哪些主要内容
  • com2us密码找回
  • ios14 举报短信
  • 影响资金等值的三个因素
  • 施工费增值税专用发票税率
  • 所有者权益变动表范本
  • windows10 电脑
  • 第三方科技
  • 如何在pc桌面上添加文件
  • launcheflc.exe什么意思
  • 代理出口退税款退到哪
  • 转让旧设备
  • 小规模纳税人查询
  • 企业实行股权激励的作用
  • php zend
  • 专家评审费发放新规定2023
  • 政府会计制度固定资产折旧方法
  • 个人所得税部分缴纳
  • 微信php开发教程
  • 前端框架三大框架
  • es restful api文档
  • 赔偿款收据样本
  • 红字记账是什么意思
  • mongodb cond
  • 员工工资是哪个会计科目
  • 一行的代码
  • sql server简单查询
  • 如何确认固定资产的减值
  • 个税起征点调整至10000
  • 有限合伙企业中谨慎有限合伙人的应当
  • 购入研发设备可以全额抵扣吗
  • 个体工商户生产经营所得税优惠政策
  • 增值税减免附加税用计提吗
  • 建筑工程劳务分包合同范本2019
  • 公司收到现金货款怎么存银行
  • 交存超库存现金
  • 其他应付款在贷方表示什么
  • 促销有哪几个方面
  • 主营业务收入和库存商品怎么区分
  • mac os怎么删除用户
  • 利用arp指令,能够防止arp欺骗吗?
  • solaris 安装
  • windows搭建radius
  • win8.1怎么安装appx没有许可证
  • linux d
  • quickdcf.exe - quickdcf是什么进程 作用是什么
  • 谈一谈js消息机制的理解
  • python100行代码案例
  • Linux Shell中判断进程是否存在的方法
  • js拖拽生成页面
  • noodoe如何使用
  • 小规模纳纳税人
  • 河南省土地使用税税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设