1、生命周期:
来自于官方API
2、Activity的4种状态:
运行状态:当前Activity位于前台,用户可见,可以获得焦点
暂停状态:其他Activity位于前台,该Activity依然可见,只是不能获得焦点。
停止状态:该Activity不可见,失去焦点。
销毁状态:该Activity结束,或所在进程被结束
3、运行过程中相关函数执行顺序:
单个Activity:
启动一个Activity:oncreat()-> onStart() -> onResume();
若通过点击home键暂时退出该Activity:OnPause() ->onStop();
从最近打开应用中再次打开:onRestart() -> oncreat()-> onStart() -> onResume();
若通过点击后退键或退出键退出该Activity:OnPause() ->onStop() ->onDestroy();
此时再一次从最近打开应用中再次打开,则重新加载Activity:oncreat()-> onStart() -> onResume();一个全新的周期
由A Avcivity跳转到B Activity:
启动 A Activity:(A)oncreat()-> (A) onStart() -> (A) onResume();
跳转到 B Activity:(A)OnPause() ->(B)oncreat()-> (B) onStart() -> (B) onResume() -> (A) onStop();
再跳转回A Activity:(B)OnPause() -> (A)onResume() ->(B) onStop() -> (B)onDestroy();;
特别说明:当刚启动Activity B时,A处于暂停状态,依然可见,当B完全将A遮挡后,A才会执行Stop();
只要A可见,就不会执行stop();
例如:B为透明、半透明、对话框等形式存在时,A没有被完全覆盖,就不会执行stop();