此文章不是详细讲解Activity生命周期的文章,只是在已掌握此知识点的若干年后,忽然发现一个新的点,是不曾经拥有的。
以下图片展示的是某博客记录的生命周期的执行流程,我看过后发现有些误解,觉得需要补充点什么,以便更好地掌握其精髓。
某博客记录的流程
条件:ActivityFirst ActivitySecond .
步骤一:ActivityFirst 跳转---> ActivitySecond
ActivityFirst onPause() 、ActivitySecond onCreate onStart onResume、ActivityFirst onStop();
步骤二:ActivityFirst 跳转---> ActivitySecond 后 finish ActivitySecond.
ActivityFirst onStart() ActivitySecond onPause(), ActivityFirst onResume(), ActivitySecond onStop() onDestroy().
步骤三:启动ActivityFirst 后finishActivityFirst
ActivityFirst onPause() onStop() onDestroy().
本章的核心点:
1、当“ActivityFirst” 跳转 “ActivitySecond” 时, 首先ActivityFirst 先执行 onPause(),后执行 ActivitySecond的onCreate onStart onResume .
此时,当我们从“ActivitySecond” 回到“ActivityFirst” 时,应该也是先执行 ActivitySecond的onPause(),后执行ActivityFirst的onStart onResume(至少我之前是这么认为的)【然而并不是】
亲测结果是:当我们从“ActivitySecond” 回到“ActivityFirst” 时,先执行 ActivityFirst的onStart(),后执行ActivitySecond的onPause,再后执行 ActivityFirst onResume
网友评论