Activity是Android组件中最基本也是最为常见用的四大组件(Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器)之一。

    Activity的概念:

      Activity它的本质上其实就是一个窗体,如我们打开软件它呈现在你眼前的都只是一个窗体而已。它可以与用户进行交互的基本的图形呈现单元。

      不同的是Activity它是没有最小化这种概念的。在Windows平台有最大化的概念,在苹果平台的窗体也是没有最大化的概念,只有调整窗体大小的概念

    Activity的三种状态:

      我们随便打开一个应用程序

这个时候我们看到的是拨号的这个Activity对吧。(运行状态) 我们点击Home键。

当我们点击回到桌面的时候,拨号的那个Activity就看不到了,这个时候就属于(停止状态)

然后我们长按Home键

那么此时我们后面的那个Activity就是(暂停状态)

    Activity生命周期:

        那么生命周期呢,我们来打开一个网站Activity生命周期图,接着,我们拿到这张图,我来给你们讲解一下运行流程。      

1.第一步呢这个Activitylaunched被启动,被启动之后首先会执行一个onCreate()方法,然后呢执行一个onStart()方法。再之后呢再执行一个onResume()方法,

2.只有在onResume执行之后,Activity才会处于运行状态。之后呢我们可以看到Activityrunning就是另外一个Activity会跑到我们的前面,

3.我们当前的Activity会执行一个onPause()回调方法。再往下呢如果我们的Activity处于不可见的状态,也就是停止状态,会执行一个onStop()这样一个回调方法。

4.如果说一个Activity处于暂停状态和停止状态之后呢,我们往左边看这个流程。如果有其他优先级更高的应用程序,它需要内存的话。我们的操作系统会把我们的Activity杀死掉。此时我们的应用程序也就会完全的被停止,内存被释放。然后供我们一些内存更高的优先级应用程序使用。如果说什么时候用户重新的去导航到我们挡墙Activity的话,那么它会重新的执行我们的onCreate()方法。就是这样的一个流程。

5.那么如果说一个应用程序处于一个暂停状态。比如我们上面的打电话程序。我们长按Home键,然后我们又回来,用户又重新回来我们的拨号页面。它会重新执行我们的方法onResume()方法。

6那么如果一个应用程序处于一个Stop状态。然后用户又重新导航到我们的程序,它会执行一个onStop()方法。在这里我们要注意一点:如果我们的Activity所在的应用程序,没有被销毁的话。从暂停状态重新执行到运行状态会重新执行onRestart()方法。然后再执行onStart(),然后再执行onResume()这样的一个流程。

7.那么onDestroy()这个方法是在什么时候被执行呢? onDestroy()这个方法也就是说在Activity被系统给销毁的时候会执行onDestroy()方法,在onDestroty()方法执行完毕之后,我们的这个应用程序就彻底的被关闭了。

这就是Activity的生命周期了。

Activity详解生命周期(Android)的更多相关文章

  1. 微信小程序开发之详解生命周期方法

    生命周期是指一个小程序从创建到销毁的一系列过程 在小程序中 ,通过App()来注册一个小程序 ,通过Page()来注册一个页面 先来看一张小程序项目结构 从上图可以看出,根目录下面有包含了app.js ...

  2. ASP.NET运行时详解 生命周期入口分析

    说起ASP.NET的生命周期,网上有很多的介绍.之前也看了些这方面的博客,但我感觉很多程序猿像我一样,看的时候似乎明白,一段时间过后又忘了.所以,最近Heavi花了一段时间研究ASP.NET的源代码, ...

  3. Tomcat源码分析 | 一文详解生命周期机制Lifecycle

    目录 什么是Lifecycle? Lifecycle方法 LifecycleBase 增加.删除和获取监听器 init() start() stop() destroy() 模板方法 总结 前言 To ...

  4. Xamarin android 之Activity详解

    序言: 上篇大概的讲解了新建一个android的流程.今天为大家带来的是Activity详解,因为自己在开发过程中就遇到 好几次坑,尴尬. 生命周期 和Java里头一样一样的,如图 图片来源于网上哈, ...

  5. 详解Android中的四大组件之一:Activity详解

    activity的生命周期 activity的四种状态 running:正在运行,处于活动状态,用户可以点击屏幕,是将activity处于栈顶的状态. paused:暂停,处于失去焦点的时候,处于pa ...

  6. Android Small插件化框架解读——Activity注册和生命周期

    通过对嵌入式企鹅圈原创团队成员degao之前发表的<Android Small插件化框架源码分析>的学习,对Android使用的插件化技术有了初步的了解,但还是有很多需要认真学习的地方,特 ...

  7. Android活动(Activity)创建及生命周期

       Activity是Android的门面,可以与用户进行互动的重要模块,凡是在应用中可以看到的东西,都是放在活动中的.   在学习新的技术时,我喜欢将需要学习的技术与自己懂得技术进行类似比较,而活 ...

  8. [安卓基础] 009.组件Activity详解

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  9. Activity详解一 配置、启动和关闭activity

    先看效果图: Android为我们提供了四种应组件,分别为Activity.Service.Broadcast receivers和Content providers,这些组建也就是我们开发一个And ...

随机推荐

  1. Matlab 之 find()函数

    当我第一次用matlab语言编写一个工程项目时,发现自己编写的脚本里循环特别多,导致编程效率很低,这让我特别苦恼.有一次导师让我阅读他编写的一个Matlab脚本,并按照新要求对其进行更改.我发现脚本里 ...

  2. Workflow笔记3——BookMark和持久化

    BookMark 我们在平时的工作流使用中,并不是直接这样一气呵成将整个工作流直接走完的,通常一个流程到了某一个节点,该流程节点的操作人,可能并不会马上去处理该流程,而只有当处理人处理了该流程,流程才 ...

  3. Java中日期的转化

    4.如何取得年月日.小时分秒? 创建java.util.Calendar实例(Calendar.getInstance()),调用其get()方法传入不同的参数即可获得参数所对应的值,如:calend ...

  4. spider RPC安全性

    spider提供了多重安全保障机制,目前主要支持接入握手校验,报文完整性校验,报文加密,报文长度检查四种机制. 接入认证 spider使用两次握手校验,其握手流程如下: 签名AES加密的方式实现. l ...

  5. struts2中从后台读取数据到<s:select>

    看到网上好多有struts2中从后台读取数据到<s:select>的,但都 不太详细,可能是我自己理解不了吧!所以我自己做了 一个,其中可能 有很多不好的地方,望广大网友指出 结果如图 p ...

  6. 很强大的HTML+CSS+JS面试题(附带答案)

    一.单项选择(165题) 1.HTML是什么意思? A)高级文本语言 B)超文本标记语言 C)扩展标记语言 D)图形化标记语言 2.浏览器针对于HTML文档起到了什么作用? A)浏览器用于创建HTML ...

  7. Ubantu【第一篇】:Ubantu中openssh连接

    h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...

  8. 便于开发的Helper类

    一.将config封装实体层: 例子config: <?xml version="1.0" encoding="utf-8" ?> <Sett ...

  9. npm更新到最新版本的方法

    打开命令行工具 npm -v 查看是否是最新版本 如果不是 运行npm i npm g 升级 打开C:\Users\用户名用户目录找到node_modules 文件夹下的npm文件夹,复制一份 打开n ...

  10. 简单的学习心得:网易云课堂Android开发第六章SQLite与ContentProvider

    一.SQLite 1.基本操作: (1)创建数据库:在SQLiteOpenHelper的子类构造器中创建. (2)创建表:在SQLiteOpenHelper的子类onCreate方法中,调用execS ...