安卓Activity生命周期详解

发布时间:2023-05-19

安卓Activity生命周期详解

一、安卓Activity生命周期有哪些

在了解安卓Activity生命周期之前,我们需要先了解Activity。Activity是Android系统中最重要的四大组件之一,代表用户与系统进行交互的窗口。Activity有四种状态,分别是运行状态、暂停状态、停止状态、销毁状态,而Activity的生命周期就是指Activity从创建到销毁这个整个过程。 常见的Activity生命周期有下面这些:

  • onCreate()
  • onStart()
  • onResume()
  • onPause()
  • onStop()
  • onDestroy()
  • onRestart()

二、安卓Activity生命周期方法

1. onCreate()

这个方法在Activity第一次创建时调用,一般用于初始化界面和数据。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}

2. onStart()

此方法在Activity可见时调用,但是还没有处于前台,用户无法与Activity进行交互。

@Override
protected void onStart() {
    super.onStart();
    Log.d(TAG,"onStart");
}

3. onResume()

Activity进入前台并且可以与用户交互时,系统会调用此方法。

@Override
protected void onResume() {
    super.onResume();
    Log.d(TAG,"onResume");
}

4. onPause()

当Activity被其他Activity遮盖或者用户回到桌面时,当前Activity会进入暂停状态,此时就会调用此方法。

@Override
protected void onPause() {
    super.onPause();
    Log.d(TAG,"onPause");
}

5. onStop()

当Activity不再可见时,也就是进入停止状态时,会调用此方法。

@Override
protected void onStop() {
    super.onStop();
    Log.d(TAG,"onStop");
}

6. onDestroy()

当Activity即将被销毁时,会调用此方法进行资源的回收和释放。

@Override
protected void onDestroy() {
    super.onDestroy();
    Log.d(TAG,"onDestroy");
}

7. onRestart()

当已停止的Activity重新启动时,会调用此方法。

@Override
protected void onRestart() {
    super.onRestart();
    Log.d(TAG,"onRestart");
}

三、安卓Activity跳转生命周期

在Activity跳转过程中,会涉及到两个Activity的生命周期。比如从MainActivity跳转到SecondActivity,此时MainActivity就会进入停止状态,而SecondActivity则会从创建到启动到恢复再到运行,最后进入生命周期的顶点。

四、Activity的生命周期

一个完整的Activity生命周期包含了下面这些:

创建

  • onCreate()
  • onStart()
  • onResume()

运行

  • onPause()
  • onResume()

暂停

  • onPause()
  • onStop()

停止

  • onRestart()
  • onStop()

销毁

  • onDestroy()

五、Activity生命周期方法

我们从这七个生命周期方法中选择以下几个作为重点探讨。

  • onCreate()
  • onResume()
  • onPause()
  • onStop()
  • onDestroy()

六、Activity完整生命周期

下面是一个Activity完整生命周期的图示。

七、Activity生命周期图

下面这张图直观展示了Activity的各生命周期方法是在哪个时候被调用的。

八、请简述Activity的生命周期

Activity的生命周期包括创建、运行、暂停、停止和销毁这些状态,每个状态都有对应的生命周期方法。在Activity创建时,会调用onCreate()onStart()onResume()方法;运行时,会调用onPause()onResume()方法;暂停时,会调用onPause()onStop()方法;停止时,会调用onRestart()onStop()方法;销毁时,会调用onDestroy()方法。Activity生命周期的变化对应了Activity的状态变化,开发者可以通过重写生命周期方法来执行一些操作或者保存一些状态,在合适的时候进行相应的处理。

九、Activity的七大生命周期

Activity的七大生命周期包括onCreate()onStart()onResume()onPause()onStop()onDestroy()onRestart(),这些生命周期方法会在特定的时刻被系统调用。