码迷,mamicode.com
首页 > 移动开发 > 详细

【Android-1】Activity生命周期

时间:2018-03-06 23:11:40      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:class   back   释放   覆盖   数据   resume   触摸   第一个   sum   

一、Activity的四种状态

Running(运行中):表明Activity处于活动状态,用户可以点击屏幕可以作出响应,也是处于Activity栈顶的状态。

Paused(暂停):表明Activity失去焦点的时候,或者被一个非全屏的Activity占据(一个透明的Activity位于栈顶),内存紧张的时候可能被回收。

Stopped(停止):当前Activity完全被覆盖的时候,内存紧张依然被回收。

Killed(被杀死):表明Activity被系统回收了,所保存的信息、成员变量都不存在了。

二、Activity生命周期分析

1. Activity首次打开会执行如下生命周期方法:onCreate()->onStart()->onResume()

  onCreate():生命周期第一个调用的方法,可以做数据加载、图片预加载操作。

  onStart():表明Activity正在被启动,处于用户可见的状态,但是并没有处于前台显示,用户还不能与这个Activity进行交互、进行点击、滑动(已经看见,但无法触摸的状态)

  onResume():表明Activity已经前台可见了,可以与用户交互了、触摸、滑动等操作。

2.点击Home键回到主界面(Activity不可见)执行的方法:onPause()->onStop()

  onPause():表明Activity处于停止状态(可见,但不能触摸)。

  onStop():onPause()方法执行完调用,表明Activity已停止,完全被遮住覆盖(内存紧张,可能被回收)。

3.当再次回到原Activity时,会执行以下方法:onRestart()->onStart()->onResume()

  onRestart():表示正在重新启动,由不可见变为可见。

  onStart():表明Activity正在被启动,处于用户可见的状态,但是并没有处于前台显示,用户还不能与这个Activity进行交互、进行点击、滑动(已经看见,但无法触摸的状态)

  onResume():表明Activity已经前台可见了,可以与用户交互了、触摸、滑动等操作

4.退出当前Activity时,执行以下生命周期方法:onPause()->onStop()->onDestroy()

  onPause():表明Activity处于停止状态(可见,但不能触摸)。

  onStop():onPause()方法执行完调用,表明Activity已停止,完全被遮住覆盖(内存紧张,可能被回收)。

  onDestroy():Activity生命周期最后一个方法,可以做一些资源回收释放工作

【Android-1】Activity生命周期

标签:class   back   释放   覆盖   数据   resume   触摸   第一个   sum   

原文地址:https://www.cnblogs.com/chapter/p/8516812.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!