一、Activity的生命周期中各个方法的作用

  onCreate(): 做Activity上所需要数据的初始化工作。

  onStart(): 显示Activity界面,此时用户对界面可见但不可交互。

  onResume(): 此时用户可与应用进行交互,做你想做的事。

  onPause(): 此时用户可见但不可交互的,或者说此时界面没有焦点,例如弹出一个对话框。

  onstop(): 此时界面变得不可见 ,被下一个activity覆盖或者最小化了。

  onDestroy(): 这是activity被干掉前最后一个被调用方法了。

二、调用生命周期方法的过程

1.启动Activity时:onCreate()-->onStart()-->onResume() -->与用户交互

2.onPause()-->onResume()

    onPause():此时可见不可交互,一般是跳出对话框之类的。此时要在这里保存你的一些数据---短暂性的数据,

  因为这个时候程序的优先级降低,有可能被系统收回。返回的时候调用 onResume(),在 onResume()读取所

  保存的数据。

  注意:这个方法里做的事情时间要短,因为下一个activity():不会等到这个方法完成才启动

3.onPause()-->onStop()-->onStart()-->onResume()  不可见到可见并交互

    一般是在Activity最小化或者被其他Activity覆盖的时候---此时Activity不可见,重新调用Activity的过程(这里指

  Activity没有被系统干掉的情况);

  另:如果此时该被覆盖的Activity被系统干掉了的话,一般都是重新启动Activity了,周期也就从头再来。

4.onPause()-->onStop()-->onDestroy()

    这是Activity被干掉的过程。我们需要在onDestroy()方法里写些关闭资源的东西,如与Activity相关联的Service,

  后台线程等。

Activity的生命周期及各生命周期方法的作用的更多相关文章

  1. [JIT_APP]Activity生命周期相关的7个方法

    先发一张安卓官方文档里面的Activity生命周期图解 下面在对这7个生命周期内相关的方法做一些简单的介绍 OnCreate() 当Activity被创建的时候,会自动运行该方法.该方法做一些初始化动 ...

  2. Activity学习(一):生命周期

    一. 认识Activity Activity是Android的四大组件之一,那么它是什么呢?如果简单的理解,可以把它当成应用的一个显示的屏幕. Activity类处于android.app包中,继承体 ...

  3. 【PMP】项目生命周期和开发生命周期

    一.定义 项目生命周期:指项目从启动到完成所经历的一系列阶段. 开发生命周期:项目生命周期内通常有一个或多个阶段与产品.服务或成果的开发相关,这些阶段称为开发生命周期. 二.生命周期 预测型生命周期( ...

  4. 微信APP生命周期、页面生命周期

    目录 小程序的启动流程 app生命周期 页面的生命周期 页面的生命周期(图) 小程序的启动流程 我们画一个图来表示一下,整个小程序的启动流程,我们就知道了: app生命周期 执行App()函数也就是注 ...

  5. Android Activity生命周期以及Fragment生命周期的区别与分析

    Android Fragment生命周期图: Activity生命周期图: 对照图: Fragment生命周期分析: 1. 当一个fragment被创建的时候,它会经历以下状态. onAttach() ...

  6. 一句话、一张图记住Activity和Fragment之间错综复杂的生命周期关系

    如果我们在Fragment和它的宿主Activity的生命周期中都加上Log日志,你能顺利写出他们的执行顺序吗?我们先来看一张Google官方的图片: 咋一听,Activity生命周期有七个方法,Fr ...

  7. activity和fragment之前运行的生命周期

    1.activity生命周期 2.fragment的生命周期 3.对比图 4.测试代码 package com.goso.testapp; import android.app.Activity; i ...

  8. Android Activity、Service、BroadcastReceiver 的生命周期

    Activity.Service.BroadcastReceiver这三个组建是Android开发中最常使用到的组件,在它们的生命周期的各个阶段我们需要针对性的做些事情,了解这些组件的生命周期有利于我 ...

  9. fragment的生命周期及其各个周期方法的作用

    先上生命周期图: Fragment的生命周期图: 与Activity的生命周期对比图: 由于Fragment是嵌在Activity中使用的,故其生命周期也是依赖于Activity的周期的,或者说Fra ...

随机推荐

  1. 关于 presentViewController 时机

    类似微信.QQ这些应用如果用户没有登录,会弹出登录界面,如果 presentViewController 是写在  viewDidAppear 之前,会有警告 Presenting view cont ...

  2. Spark Streaming源码解读之生成全生命周期彻底研究与思考

    本期内容 : DStream与RDD关系彻底研究 Streaming中RDD的生成彻底研究 问题的提出 : 1. RDD是怎么生成的,依靠什么生成 2.执行时是否与Spark Core上的RDD执行有 ...

  3. EXCL poi导入

    public static void importExcel2(File file) throws Exception { InputStream is = new FileInputStream(f ...

  4. SSH整合(1)异常

    信息: No Spring WebApplicationInitializer types detected on classpath 十二月 01, 2016 10:06:12 下午 org.apa ...

  5. NHibernate系列文章十四:NHibernate事务

    摘要 NHibernate实现事务机制非常简单,调用ISession.BeginTransaction()开启一个事务对象ITransaction,使用ITransaction.Commit()提交事 ...

  6. 也说virtualbox下安装centos7

    以前一直在VMware Workstation下安装虚拟机系统,这几天由于电脑被别人使用误升级为win10,而导致原来的LNMP不能使用,查找原因在于即使是最新的VM12.1.1也只是支持win8而已 ...

  7. HeartBeat的一些介绍和功能上的一些总结

    HeartBeat的作用: 通过HeartBeat,可以将资源(IP以及程序服务等资源)从一台已经故障的计算机快速转移到另一台正常运转的机器上继续提供服务,一般称之为高可用的服务.在实际的生产应用场景 ...

  8. select、epoll、twisted网络编程

    select.poll和epoll的区别 select select最早于1983年出现在4.2BSD中,它通过一个select()系统调用来监视多个文件描述符的数组,当select()返回后,该数组 ...

  9. 初识Memcached

    一,什么是memcached? Memcached是一个高性能的分布式内存对象缓存系统,用于动态web应用以减轻数据库负载..它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱 ...

  10. JavaWEB域对象

    PageContext: ServletRequest: HttpSession: ServletContext: void setAttribute(String name, Object valu ...