Activity生命周期

2018-10-08  本文已影响11人  LingoGuo

Activity简介

Activity是一种可以包含用户界面的组件,主要用于和用户进行交互,属于Android四大组件之一。

Activity生命周期

先上一张图:

屏幕快照 2017-09-08 上午11.18.17.png

onCreate(Bundle savedInstanceState):创建Activity时调用

onStart():Activity由不显示变为显示时调用,但实际用户还看不到

onResume():Activity在前台,可以和用户交互时调用

onPause():当Activity被部分遮住时这个方法会被调用,正常情况下紧接着onStop()会被调用,如果重新回到前台,那么onResume()会被调用

onStop():Activity在完全不可见时调用,如果重新回到前台,那么onRestart()、onStart()、onResume()会被相继调用

onRestart():Activity从完全不可见的状态重新启动时调用

onDestroy():Activity销毁之前调用

补充说明:

各种情况Activity的生命周期:
以下情况代码中均没有重写onSaveInstanceState和onRestoreInstanceState

  1. 点击应用进入主Activity界面,该Activity的onCreate、onStart、onResume相继会被调用;
  2. 点击应用进入主Activity界面,熄屏,该Activity的onPause、onSaveInstanceState、onStop相继被调用,再次亮屏,onRestart、onStart、onResume相继调用
  3. 点击应用进入主Activity界面,按Home键或者全面屏手势返回桌面,此时onPause、onSaveInstanceState、onStop相继被调用,再次回到应用主Activity界面,onCreate、onStart、onResume相继调用
  4. 假设某个Button点击后会跳转到新的Activity,那么此时主Activity的onPause会被调用,然后接着新的Activity的onCreate、onStart、onResume相继被调用,接着是主Acitivity的onSaveInstanceState、onStop相继被调用,返回主Activity,主Activity的onRestart、onStart、onResume相继被调用,除非主Activity由于内存不足已被系统杀死
  5. 通过Back键或者全面屏返回手势退出主Activity界面,主Activity的onPause、onStop、onDestroy相继被调用,再次进入主Activity的onCreate、onStart、onResume相继调用
  6. 点击应用进入主Activity界面,将设刚进入是竖屏状态,接着将手机横屏,那么该Activity的onPause、onSaveInstanceState、onStop、onDestroy、onCreate、onStart、onRestoreInstanceState、onResume将被相继调用,假设主Activity界面有一个EditView,在竖屏状态下输入“哈哈”,接着横屏,发现“哈哈”依然还在

补充说明:

上一篇下一篇

猜你喜欢

热点阅读