zoukankan      html  css  js  c++  java
  • 【Android-1】Activity生命周期

    一、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生命周期最后一个方法,可以做一些资源回收释放工作

  • 相关阅读:
    利用async和await异步操作解决node.js里面fs模块异步读写,同步结果的问题
    node.js的fs核心模块读写文件操作 -----由浅入深
    node.js 发布订阅模式
    js 发布订阅模式
    vue.js定义一个一级的路由 ----由浅入深
    vue.js编程式路由导航 --- 由浅入深
    vue.js嵌套路由-------由浅入深
    Spring事件体系
    Hibernate监听器
    学习网站地址
  • 原文地址:https://www.cnblogs.com/chapter/p/8516812.html
Copyright © 2011-2022 走看看