其实关于这个的文章,一搜一堆。但是我觉得实践一下记忆再做笔记理解的更加深刻。
原材料:两个Activity【TestOneActivity,TestTwoActivity】并且在【TestOneActivity】设置了一个button点击事件。
烹饪方法:重写所有的生命周期的方法onCreate(),onStart(),onResume(),onPause(),onStop(),onDestory().并且在里面打印日志
最后效果:
咳咳,上错图。来来来~
当启动【TestOneActivity】
TestOneActivity: onCreate:
TestOneActivity: onStart:
TestOneActivity: onResume:
这个了解一点生命周期的都知道。
【重点来了】当点击按钮的时候
TestOneActivity: onPause:
TestTwoActivity: onCreate:
TestTwoActivity: onStart:
TestTwoActivity: onResume:
TestOneActivity: onStop:
认真看看,先执行了【TestOneActivity】onPause(),然后直接【TestTwoActivity】的onCreate(),当执行到【TestTwoActivity】的onResume(),才执行【TestOneActivity】onStop()。
然后按返回键
TestTwoActivity: onPause:
TestOneActivity: onRestart:
TestOneActivity: onStart:
TestOneActivity: onResume:
TestTwoActivity: onStop:
TestTwoActivity: onDestroy:
这里也是,先执行到了【TestOneActivity】的onResume(),才执行【TestTwoActivity】的onStop()和onDestory().
由此可以得出:当执行到一个活动的onResume(),才会执行上一个活动的onStop();