由于是android新手,所以对Activity和Fragment的生命周期进行了简单测试,相关流程介绍的也比较多了。

Activity生命周期:

 

onStart()和onResume()的区别:

onStart()和onResume()都表示Activity可见,但是onStart()时Activity还在后台,用户不可见(不可交互),但onResume()时,Activity显示在前台,用户可见(可以交互)。

onPause()与onStop()的区别:

执行onPause()时,活动还是相对可见的,比如启动一个对话框式活动,此时不会执行onStop(),也不会回收活动,此时点击返回键,会执行onResume();只有当活动完全不可见时,才会执行onStop(),这时活动可能会被摧毁、回收,在未摧毁之前点击返回键时,会调用onRestart()方法。

当系统配置发生改变时,如果没有进行配置,则Activity的onPause()、onStop()和onDestroy()都会执行,由于Activity是被异常终止的,因此会调用onSaveInstanceState来保存Activity状态,该方法在onStop()之前调用,与onPause()没有固定时序。当Activity被重建时,调用onRestoreInstanceState方法,读取保存的状态。

 

Fragment生命周期:

Fragment的生命周期与Activity的生命周期有些相同。

下面测试了在Activity中添加Fragment的执行顺序,A代表Activity,F代表Fragment。

当点击了其它Fragment,进行Fragment交换时的执行顺序:

 

当退出Activity时,执行顺序为:

OK,介绍完毕

posted on 2019-03-01 11:23  Lotz  阅读(292)  评论(0)    收藏  举报