今天来回顾一下Activity的生命周期调用。
Activity生命周期上面图片展示了正常情况下Activity从创建到销毁的整个基本生命周期。
今天主要探讨一下Activity几种情况下的生命周期:
1. Activity Demo1 跳到Activity Demo2:
Intent intent =newIntent(this, ActivityDemo2Activity.class);
startActivity(intent);
运行结果:
Demo1 跳到Demo2注意到没有? onSaveInstanceState方法被调用了。
2. 按Back键返回上一个Activity:
运行结果:
从Demo2 按back键此时, onSaveInstanceState方法没有被调用。
3. 按Home键回到桌面:
运行结果:
从Demo1 按Home键onSaveInstanceState方法也被调用了。
4. Activity主动finish:
运行结果:
Demo2 调用finish()5. 切换屏幕方向:
Demo1 和 Demo2 的声明运行结果:
在Demo1 中切换屏幕方向 在Demo2中切换屏幕方向看到区别了吗? 如果在Manifest文件中对 Activity 指定了configChanges中包含orientation|keyboard|keyboardHidden|screenSize|, 则切换屏幕方向时不会重建Activity, 而是调用onConfigurationChanged 方法。
以上, 总结了一些情况下Activity的生命周期调用。
网友评论