Activity生命周期解析
2016-06-21 23:08
330 查看
一般来说,Activity生命周期分为以上7个过程,他们的运行大致如下:
1)首次启动activity时,先调用onCreate(),再调用onStart(),然后调用onResume(),activity进入运行状态,展示到界面上,相应用户操作;
2)当前activity被其他activity覆盖其上(theme为dialog形式的activity),会调用onPause();
3)当前activity由(2)状态转到前台,会调用onResume();
4)当前activity上展示dialog,不会执行生命周期的方法;(若dialog为全屏?)
5)当前activity转到新的activity界面或按HOME键回到Launcher界面或被锁屏,会调用onPause(),onStop();
6)当前activity由(5)状态转到前台,会调用onRestart(),onStart(),onResume();
7)用户退出当前activity,会调用onPause(),onStop(),onDestroy(),结束当前activity;
除了以上一些基础的生命周期方法,在实际开发中,还有以下一些常用的方法:
1、onWindowFocusChanged():当前activity获得/失去焦点时被调用;
1)在activity被创建时,此方法在onResume()之后被调用;
2)在展示dialog时,也会调用此方法;
3)在其他activity覆盖其上或转到其他activity或按HOME键,此方法在onPause()之后,onStop()之前被调用;
4)在锁屏时,此方法在onStop()之后被调用;
5)当前activity由(3)(4)两种状态转到前台,此方法在onResume()之后被调用;
使用场景:有时,我们需要程序初始化时,获取view的尺寸,这时在onCreate中无法获取,因为此时window对象还未创建完成;这时我们就可以在onWindowFocusChanged()中获取;
2、onSaveInstanceState()
3、onRestoreInstanceState()
参考文章:http://blog.csdn.net/liuhe688/article/details/6733407
相关文章推荐
- Toast提示框
- Dialog对话框
- 通知栏的提示(notification)
- Android菜单的几种方法
- Android内的动画两种
- Android 基础知识点总结
- 布局的笔记
- Android笔记hm001
- android开发系统构架
- 一次性退出所有avtivity
- 【Anroid进阶】SQLite数据库使用完全详解
- android_LayoutInflater
- android_SQLite
- android_判断横竖屏以及设置方式
- android_SpannableString
- android_BroadcastReceiver
- android 的基础体系架构浅述
- activity的启动模式
- activity的生命周期
- android小笔记