看一个图先:

这是官网的Activity生命周期结构图,从这个图中可以看出Activity的生命周期函数挺多的,其实他的生命周期和以往我们看到的其他组件的生命周期一样,都是从创建到销毁的过程,只不过之间多加了几个生命周期函数,将他的生命周期细化了。

首先看到的事onCreate()函数,顾名思义这个函数在Activity开始创建时调用,可以在其中定义一些初始化操作。接下来是onStart()方法,这个方法在Activity开始被执行时调用,它紧随onCreate()方法之后调用,接着是onResume()方法,这个方法对我们来说算是比较陌生的,这个方法是在该Activity或得用户输入焦点时被调用,这个或得用户输入焦点有点不好理解,如果我们用过Android手机或者其他系统的手机时,经常会看到有些窗口虽然能看到但无法对他进行操作,这时的Activity就没有或得用户焦点。当这个方法调用后Activity开始真正的运行了,在Activity正在运行时用户激活了另一个Activity,这时将调用第一个Activity的onPause()方法,可以理解为第一个Activity被暂停了,这个时候如果系统的内存不够用(手机内存不够用的情况经常发生),第一个Activity的进程可能被杀死(何时被杀死是由系统决定的,不需要我们参入),当下次我们再运行第一个Activity时就需要重新创建这个Activity,那就又需要调用onCreate()方法。如果在这个Activity没有被杀死的情况下,我们重新调用第一个Activity,就会直接调用它的onResume()方法后开始运行。如果第一个Activity很久都没有得到再次运行机会,就会调用onStop()被停止,这时如果Activity又或得用户输入焦点,就会调用onRestart()方法,重新开始执行这个Activity,或者被系统杀死,否则调用onDestroy()方法销毁Activity。这整个过程看起来有点绕,其实在实际开发中我们很少会用到所有的生命周期函数,但我们要弄清它的原理,在使用时知道所以然就行了。

转载于:https://www.cnblogs.com/wustrive-2008/archive/2011/06/15/Activity.html

Android学习之Activity生命周期相关推荐

  1. Android面试之Activity生命周期详解

    Activity生命周期详解 一 Activity的四种状态: Activity的生命周期中存在四种基本的状态:活动状态(Active/Runing),暂停状态(Paused),停止状态(Stoppe ...

  2. Android Ams对于Activity生命周期的管理

    分析Activity的生命周期管理,我觉得应该先看下面两篇关于Activity的官方文档: 了解 Activity 生命周期 处理 Activity 状态更改 里面有下面一段话,比较简洁的说出了Act ...

  3. android学习笔记---36_Activity生命周期

    36_Activity生命周期 ----------------------------- 1.Activity生命周期,用于activity在运行时候受到一些突然事件的影响   ,例如:正在使用一个 ...

  4. Android 组件系列-----Activity生命周期

    本篇随笔将会深入学习Activity,包括如何定义多个Activity,并设置为默认的Activity.如何从一个Activity跳转到另一个Activity,还有就是详细分析Activity的生命周 ...

  5. 【Android 四大组件之Activity】一文吃透Activity 生命周期

    作者:半身风雪 简介:在Android组件中最基本也是最为常见的四大组件: Activity Service服务 Content Provider内容提供者 BroadcastReceiver广播接收 ...

  6. Android 插件化原理解析——Activity生命周期管理

    之前的 Android插件化原理解析 系列文章揭开了Hook机制的神秘面纱,现在我们手握倚天屠龙,那么如何通过这种技术完成插件化方案呢?具体来说,插件中的Activity,Service等组件如何在A ...

  7. Android apk动态加载机制的研究(二):资源加载和activity生命周期管理

    转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/23387079 (来自singwhatiwanna的csdn博客) 前言 为了 ...

  8. 【Android】Activity生命周期

    转载至:http://blog.csdn.net/liuhe688/article/details/6733407 子曰:溫故而知新,可以為師矣.<論語> 学习技术也一样,对于技术文档或者 ...

  9. Android doc |Getting Started|部分 转载 --管理Activity生命周期

    原文 https://developer.android.com/training/basics/activity-lifecycle/index.html 原文被部分改动 管理Activity生命周 ...

  10. Android笔记 activity生命周期 Tasks and back stack回退栈

    正常打开一个应用,先后调用Activity的onCreate.onStart.onResume 正常退出一个应用,先后调用Activity的onPause.onStop.onDestroy(进程被杀死 ...

最新文章

  1. 在ASP.NET 中实现单点登录
  2. 首次发现!AI脑回路演化向人类更进一步,OpenAI最新研究引热议,有学者评价:太吓人了...
  3. 科大星云诗社动态20220106
  4. 编写java实用工具-针对未压缩的pdf转word,(java实现),压缩过的pdf勿进
  5. xml android 字体,自定义字体和XML布局(Android)
  6. python代码解读软件_5种带你轻松分析Python代码的软件库
  7. 第十周软件工程作业-每周例行报告
  8. netflix_学习Netflix管理员–第2部分
  9. vue 中indexof_大厂Vue最佳实践总结,提高竞争力!
  10. 全向轮机器人左下轮运动学分析
  11. SpringAOP配置与使用(示例)
  12. linux信号量使用
  13. python生成数字证书_makecert 制作数字证书
  14. 计算机电路节点,电路分析基础之节点分压原理
  15. 用Python发送微信消息给好友
  16. 想成为“王者”的必备能力——领导力21法则
  17. 16个Javascript的Web UI库、框架及工具包
  18. 计算并输出所有的玫瑰花数
  19. Win11自带的输入法不见了
  20. 产品使用说明书小程序开发制作说明

热门文章

  1. 广西民族博物馆真好玩
  2. Kalman算法C++实现代码(编译运行通过)
  3. Data Member的布局
  4. C++ 动态结构体数组与map
  5. C# List用法;用Exists判断是否存在符合条件的元素;判断是否存在
  6. hive中实现行转列_##[函数]Hive中行列转换(行转列)
  7. python深度神经网络_深度神经网络 (第七部分)。 神经网络的融合: 堆叠
  8. springboot+vue全栈开发_全栈的自我修养: 002使用@vue/cli进行vue环境搭建 (使用Vue,SpringBoot,Flask完成前后端分离)...
  9. python 06day --bootstrap框架使用及linux的磁盘管理
  10. express不是内部或外部命令的解决方法