展会信息港展会大全

android 保存activity的状态的处理
来源:互联网   发布日期:2016-01-14 09:56:04   浏览:1497次  

导读:处理系统配置变化很多设备可以在运行时改变系统配置,比如屏幕方向,键盘布局以及语言等。当类似的变化发生时,系统会把运行的activity重启(调用onDestroy(),然后调用onStart(),――哦~,没有调用onRestart()......

处理系统配置变化

很多设备可以在运行时改变系统配置,比如屏幕方向,键盘布局以及语言等。当类似的变化发生时,系统会把运行的activity重启(调用onDestroy(),然后调用onStart(),――哦~,没有调用onRestart()),如果你的activity能跟据这些变化做出相应的处理,那么你的程序将更稳定可爱。

那么如何应付这些变化呢,最好的办法就是写好状态保存/恢复方法们。比如onSaveInstanceState(),onRestoreInstanceState()/onCreate()。

对于系统配置改变的详细信息以及基体应对方法,请观 处理运行时配置变化 一节。

协调activity们

当一个activity启动另一个时,两者都在走生命周期。如果这两个activity之间要共享数据,那么重点要理解当第二个activity被创建时,第一个activity还没有执行到onStop()。开始新一个和结束前一个之间有交集。

当activityA启动ActivityB时,会按以下顺序执行:

1Activity A 的onPause()执行。

2Activity B的onCreate(),onStart(),onResume()依次执行(此时actvityB具有用户焦点)。

3Activity A的onStop()被执行(假设A被B完全遮盖)。

你应跟据这个顺序来管理两者之间的数据传递。比如,如果A要向数据库中写入数据,要保证B在初始化时能读到A写入的完整数据,那么A应在onPause()方法中写入数据,而不能在onStop()中写入。

赞助本站

人工智能实验室

相关热词: activity 状态

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港