Activity总共有7个回调方法,代表着不同的生命周期的环节。

1.onCreate()

  在活动第一次被创建的时候调用。在这个方法中需要完成活动的初始化操作,比如说加载布局、绑定事件等。

2.onStart()

  这个方法在活动由不可见变为可见的时候调用。

3.onResume()

  这个方法在活动准备好与用户进行交互的时候调用,此时的活动一定位于返回栈的栈顶,并且处于运行状态。

4.onPause()

  这个方法在系统准备去启动或恢复另外一个活动的时候调用。我们通常在这个方法中将一些消耗CPU的资源释放掉,以及保存一些关键数据。但这个方法的执行速度一定要快,不然会影响新的栈顶活动的使用。

5.onStop()

  这个方法在活动完全不可见的时候调用。它和onPause()方法的主要区别在于,如果启动的新活动是一个对话框式的活动(AlertDialog),那么onPause()方法会得到执行,而onStop()方法并不会执行。

6.onDestroy()

  这个方法在活动被销毁之前调用,之后活动的状态将变为销毁状态。

7.onResume()

  这个方法在活动由停止状态转变为运行状态之前调用,也就是活动被重新启动了。

  进入到MainAcitivty的时候:

    由于是第一次进入,是新建的,所以会有onCreate()出现,之后进行到onResume()才会被用户看到。

  按回退键退出app的时候:

    按back键之后会销毁activity,所以会有onDestroy。

  跳转到DialogActivity的时候:

    由于跳转到的DialogActivity不回完全掩盖住原来的activity,仍然是可见的,所以是onPause(),表示的是可见,但失去焦点。

  跳转到NormalActivity的时候:

  由于跳转到的NormalActivity,掩盖住原来的activity,变为不可见,所以是onStop(),表示的是不可见。

  从NormalActivity跳转到MainActivity的时候:

  从一个activity跳到现在的activity,首先需要重新启动,然后一直变化到可见状态。

android入门 — Activity生命周期的更多相关文章

  1. Android开发——Activity生命周期

    Android开发--Activity生命周期 Activity作为四大组件之首,也是使用最频繁的一种组件.本文将主要讲解Activity生命周期,包括正常情况下的Activity生命周期和异常情况下 ...

  2. android开发------Activity生命周期

    这几天工作比较忙,基本没有什么时间更新播客了. 趁着今晚有点时间,我们来简单说一下什么是Activity生命周期和它们各阶段的特征 什么是生命周期 在还没有接触android开发的时候,听到有人说Ac ...

  3. Android编程: Activity生命周期和LogCat使用

    学习内容:Activity生命周期和LogCat使用 ====Activity生命周期==== 图示(转载): 创建    onCreate重启    onRestart开始    onStart恢复 ...

  4. Android开发--Activity生命周期回顾理解

    Activity和Servlet一样,都用了回调机制.我们通过类比servlet来学习Activity.当一个servlet开发出来之后,该servlet运行于Web服务器中.服务器何时创建servl ...

  5. android 17 activity生命周期

    手机指南针传感器处于手机头部. Activity生命周期: 启动. onCreat()方法:初始化布局对象,设置监听器. onstart()方法:注册监听器. onResume():activity已 ...

  6. Android之Activity生命周期简介

    概述 有图有真相,所以先上图: 上图是从Android官网截下的Activity的生命周期流程图,结构非常清晰,它描述了Activity在其生命周期中所有可能发生的情况以及发生的先后顺序,下面就将结合 ...

  7. 浅谈Android之Activity生命周期

     Activity作为四大组件之一,出现的频率相当高,基本上我们在android的各个地方都能看见它的踪影,因此深入了解Activity,对于开发高质量应用程序是很有帮助的.今天我们就来详细地聊聊Ac ...

  8. 【Android】Activity 生命周期具体解释

    与其它编程模式不同,android中的Activity没有main()函数.我们无法决定Activity的创建和销毁过程,Activiy的创建和销毁(即生命周期)由系统完毕,系统会在Activity的 ...

  9. Android关于Activity生命周期详解

    子曰:溫故而知新,可以為師矣.<論語> 学习技术也一样,对于技术文档或者经典的技术书籍来说,指望看一遍就完全掌握,那基本不大可能,所以我们需要经常回过头再仔细研读几遍,以领悟到作者的思想精 ...

随机推荐

  1. Java实例 Part6:Java中的克隆

    目录 Part6:Java中的克隆 Example01:Java对象的假克隆 Example02:Java对象的浅克隆 Example03:Java对象的深克隆 Example04:序列化与对象克隆 ...

  2. helpera64开发板下制作ubuntu rootfs镜像(二)

    上一篇路径:https://www.cnblogs.com/jizizh/p/10380513.html Helpera64开发板ubuntu剩于工作: 1.背光调节 答:/sys/class/bac ...

  3. 2.4 自己编写一个vivi驱动程序

    学习目标:从零编写一个vivi驱动程序,并测试: 一. vivi驱动应用程序调用过程 上节对xawtv对vivi程序调用欧城进行了详细分析,可总结为以下流程: 二.仿照vivi.c编写myvivi.c ...

  4. python paramiko模块和多线程讲解

    1.paramiko 实现ssh 登录 import paramiko # 实现ssh登录 ssh_client = paramiko.SSHClient() ssh_client.set_missi ...

  5. C服务程序模板

    在DoWork中添加自己的代码.   服务安装: sc create srvdemo binpath= "F:\srvdemo.exe" 服务启动:sc start srvdemo ...

  6. 算法训练 K好数(C/C++)AC码

    蓝桥杯 算法训练 K好数 AC码 题目要求: 算法训练 K好数 问题描述 如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数.求L位K进制数中K好数的数目.例如 ...

  7. A1070

    给出总价和需求量,求最大收益. 思路:求单价最高的,排序. #include<cstdio> #include<algorithm> using namespace std; ...

  8. A.Activity planning

    题目描述There is a collection of n activities E={1,2,..,n}, each of which requires the same resource, su ...

  9. 大二作业——操作系统实验——C语言用双向链表,模拟实现动态分区式存储管理

    实验:动态分区式存储管理 实验内容: 编写程序模拟完成动态分区存储管理方式的内存分配和回收.实验具体包括:首先确定内存空闲分配表:然后采用最佳适应算法完成内存空间的分配和回收:最后编写主函数对所做工作 ...

  10. C语言中赋值表达式的返回值是什么?

    我们或多或少都有过,或者见过将赋值表达式参与运算的情况.这通常会伴随着一些意想不到的问题.今天我就见到了一段奇怪的代码: #include<stdio.h> int main() { ; ...