理解Activity的生命周期对Android程序员只管重要,今天在这里记录一下:
Activity这个类,定义了一些回调函数来控制它的生命周期。
- onCreate() —— 当Activity第一次创建的时候被调用。
- onStart() —— 当Activity对用户可见的时候被调用。
- onResume() —— 当Activity开始和用户交互的时候被调用。
- onPause() —— 正在运行的Activity马上要被暂停的时候被调用,此时,在这之前的Activity被重新获取。
- onStop() —— 当Activity不在对用户可见的时候被调用。
默认地,被创建的Activity中都包含一个onCreate()方法,通过这个方法,可以创建显示给用户的UI组件。
从“被创建”到“被销毁”的生命周期图示:
当这个activity第一次被加载会调用:onCreate() 、onStart()、onResume() 。
按“返回键”,程序退出会调用:onPause()、onStop()、onDestroy()。
当Activity1被另一个Activity覆盖,转入后台时会调用:onPause()、onStop()不会调用onDestroy(),这说明Activity1还在内存当中。
当覆盖在Activity1的Activity消失,Activity1重新显示时会调用:onRestart()、onStart()、onResume()。
我们可以得出结论:
- 使用onCreate()方法去创建和初始化将要使用的组件。
- 使用onResume()方法去开启服务和执行代码。当Activity处于“前台”模式下,这些服务和代码需要被开启或执行。
- 使用onPause()方法去停止服务和阻断代码。当Activity处于“后台”模式下,这些服务和代码不需要被开启或执行。
- 使用onDestroy()方法去释放资源。