Activity系列讲解---三大基本状态与七大生命周期函数
简介:四大组件之一,在应用中一个Activity可以用来表示一个界面,可以理解为用户可视化界面,一个android应用必须通过Activity来运行和启动。
1.三大基本状态与七大生命周期函数
2.代码实现---LifeCycleActivity.class
/** * Activity的三个状态和七大生命周期方法分析 * */ public class LifeCycleActivity extends AppCompatActivity { /** * Activity创建时第一个调用的方法,通常我们在该方法中加载布局文件,初始化UI组件,事件注册等等 * @param savedInstanceState */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_life_cycle); System.out.println("Activity---->onCreate"); } /** * 在onCreate()之后调用,用于显示界面,但用户还不能进行交互 */ @Override protected void onStart() { super.onStart(); System.out.println("Activity---->onStart"); } /** * 在onStart()之后调用,该方法执行完成后,用户可以进行交互,当前Activity进入Resumed状态 * 当一个paused状态的activity被重新返回时,会再次调用该方法,让activity进入运行状态 */ @Override protected void onResume() { super.onResume(); System.out.println("Activity---->onResume"); } /** * 当其它activity(透明或窗口模式)进入时,会被调用,让当前activity进入paused状态(暂停状态) * 当前activity还可见但不可交互,如果其它更高优先级的APP需要内存时,当前activity可能会被销毁(kill) * 当前activity被返回时会调用onResume() */ @Override protected void onPause() { super.onPause(); System.out.println("Activity---->onPause"); } /** * 当其它activity完全覆盖该activity时,会被调用,当前activity进入stop状态(停止状态) * 当前activity不可见,如果其它更高优先级的APP需要内存时,当前activity可能会被销毁(kill) * 当前activity被返回时会调用onRestart() */ @Override protected void onStop() { super.onStop(); System.out.println("Activity---->onStop"); } /** * 当一个stopped状态的activity被返回时调用,之后再调用onResume方法进入运行状态 */ @Override protected void onRestart() { super.onRestart(); System.out.println("Activity---->onCreate"); } /** * 当前activity被销毁时调用,通常在该方法中用来释放资源 */ @Override protected void onDestroy() { super.onDestroy(); System.out.println("Activity---->onDestory"); } }
3.运行结果分析:
(1)当启动actvity时,会调用onCreate()-->onStart()-->OnResume()
(2)当按Home键或者锁屏键时,会调用OnPause()-->OnStop()
(3)当按退出键时,会调用OnPause()-->OnStop()-->OnDestory()
(4)当解开锁屏时,会调用OnRestart()-->OnStart()-->OnResume()