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()

  

原文地址:https://www.cnblogs.com/langdon/p/6251987.html