avatar

目录
Android Activity生命周期

# Android Activity生命周期

image.png

  • onCreate 在Activity第一次被创建时调用onCreate方法。通常在onCreate方法中加载布局,初始化控件。

  • onStart 在Activity变为可视的时候,调用onStart方法。

  • onResume 当Activity处于栈顶,并处于正在运行状态,可以与用户进行交互的时候,调用onResume方法。

  • onPause 当Activity已经失去焦点,且依旧是可视状态时调用onPause方法,此时Activity无法与用户进行交互。

  • onStop 当Activity从可视变为不可视的时候,调用onStop方法。

  • onDestory onDestory方法在Activity被销毁前调用。

  • onRestart onRestart方法在Activity被重新启动时调用,在Activity第一次被创建的时候不会调用。

生命周期变化测试

重写方法

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

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

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

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

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

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

Normal Activity

程序启动时

image.png

进入Text View再点击Back按钮

image.png

Dialog Activity

程序启动时

image.png

显示Dialog并点击空白回到主activity

image.png

销毁窗口

点击back回到系统主页面

image.png

Activity启动模式

standard、singleTop、singleTask、singleInstance

standard

默认模式

singleTop

栈顶复用模式,假如Activity处于栈顶,再次启动这个Activity的时候,复用该Activity。

singleTask

栈内复用模式,只要在同一个栈内启动模式为栈内复用模式的Activity,再次启动的时候就可以复用。

singleInstance

单实例模式,被设置启动模式为单实例模式的Activity独自享有一个Activity栈。

文章作者: kabeor
文章链接: https://kabeor.github.io/Android%20Activity%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 K's House

评论