activity一共有7个生命周期(API21后增加的3个暂时不讨论),分别为:
onCreate(Bundle savedInstanceState)
oncreate方法会在activity创建时首先运行,可在方法中设置该activity显示的界面及风格,并初始化一些变量。
onStart()
onStart方法会在oncreate方法运行完后运行,或者activity从暂停状态回到活动状态时运行。
onResume()
onResume方法会在onStart方法运行完成后运行。
onPause()
onPause方法会在activity由活动状态变为非活动状态时或者失去焦点时运行。
onStop()
onStop方法会在activity完全不可见时运行。
onDestroy()
onDestroy方法会在activity处于后台,并且手机的内存不足时会由系统杀死activity后调用该方法,或者人为调用finish()方法时会调用。
onRestart()
onRestart方法会在activity从stop转为活动状态时运行。
例如一个应用中有2个activity:A、B。A为启动页面,当应用启动后,会首先调用Aactivity的onCreate、onStart、onResume方法,当从A跳转到B页面时,会首先调用A中的onPause方法,然后调用B页面中的onCreate、onStart、onResume方法,此时A页面已经不可见,所以会调用A页面的onStop方法。当点击返回键时,会调用B页面的onPause方法,随后是A页面的onRestart、onStart、onResume方法,此时B页面已经不可见,会调用B页面的onStop方法。默认情况下返回键相当于关闭当前的activity,也就是调用finish方法,然后会调用B页面的onDestroy方法。如图所示:
本博客只为记录知识点,希望不会误导大家,如有错误希望在评论中指出,互相进步!