概况
讲Android Activity那怎么都绕不过这张图,这篇文章也是围绕这幅图详细分析。
背景
假设这是你的APP,以此为背景,下面的每个part请结合上图理解。
#Case 1
当按下app启动图标后,主页面Activity执行
onCreate()->onStart()->onResume()
此时显示APP主界面
#Case 2
此时位于主界面Activity,当点击OpenDial或者NewActivity启动一个新的Activity并遮挡当前主页面Activity时,主页面Activity执行
onPause()->onStop()
假设这里按下的是NewActivity,此时应显示NewActivity页面
#Case 3
当点击OpenDialog打开一个Dialog,此时虽然启动了新的Activity但是主页面Activity没有被遮挡,也就没有执行onStop(),所以主页面Activity执行
onPause()
此时效果如下,可以看到主页面Activity只是变成灰色没有被完全遮挡
#Case 4
当按下Back键返回到主页面,由于之前没有onStop,所以不必经过onRestart()->onStart(),此时主页面Activity仅执行
onResume()
此时返回主页面Activity
#Case 5
当按下EXIT按钮或者Back返回键,APP将彻底销毁此时主页面Activity执行
onPause()->onStop()->onDestory()
此时返回抽屉页面,APP退出