android的生命周期
1.运行状态:当一个活动处于栈的顶部时,这时活动就处于活动状态,系统是不愿意回收处于活动状态的,会影响用户体验。
2.暂停状态:当一个活动不再处于栈的顶部时,但仍然可见时,这时就是暂停状态了。处于暂停状态的活动仍然可见,系统也愿意回收,刚样也会影响用户体验。
3.停止状态:当一个活动不再处于栈的顶部时,并且完全不可见时,这时就是停止状态了。系统仍然会为这种活动保存成员变量和相应的状态,只有在内存很低的情况下才会进行回收。
4.销毁状态:当一个活动从栈中移除时,这时就是销毁状态了。系统会最先处理这种活动,以释放手机的内存空间。
活动的生存期(ActivityLifetime):Activity类中定义了7个回调方法分别是:onCreate()、onSart()、onResme()、onPause()、onStop()、onDestroy()、onRestart()。这7种方法覆盖了活动生命周期的每人环节,下面我们来一 一了解道来。
1.onCreate():初始化操作,所有活动都从这里启始。这里可以加载布局,或绑定事件等。
2.onSart():这个是活动变为不可见时调用。
3.onResme():这个方法一直处于栈的顶部,在和用户交互时调用,一直处于动行状态。
4.onPause():系统准备去启动或者恢复另一个活动时调用。这个方法以通常用来释放内存或保存数据,一定要快,不然会影响到栈顶部的活动运行。
5.onStop():这个方法是活动处于不可见时调用,它与onPause()的区别在于如果启动的活动是一个对话框式的,则onPause()会得到执行而onStop()的不会执行。
6.onDestroy():这个是活动被回收时调用,调用后活动就会被回收。
7.onRestart():重启处于停止状态的活动。
以上7种状态除onRestart()外,都是成对出现的。可以简化成三个活动期:
1.完整期:活动处于onCreate()和onDestroy()之间的就是完成生命周期。在onCreate()实例化,在onDestroy()销毁。
2.可见生存期:活动在处于onSart()和onStop()之间的就是可见生期存。与上面同样,在onSart()中创建,在onStop()中回收。
3.前台生存期:onResme()和onPause()之间就是前台生存期。在前台生存期,活动总是处于运行状态或栈的顶部,此时活动是可以和用户进行交互的,我们平时接触最多的就是这种。下面这张图就很好的说明了,(图非本人所画)。
android的生命周期的更多相关文章
- Android 进程生命周期 Process Lifecycle
Android 进程生命周期 Process Lifecycle 进程的生命周期 Android系统会尽力保持应用的进程,但是有时为了给新的进程和更重要的进程回收一些内存空间,它会移除一些旧的进程. ...
- Android的生命周期学习
掌握Android的生命周期对于如何一个刚刚接触Android初学者来说是至关重要的,在然后的开发中会给我留有更多的时刻余地,当自己正在认识Android中整个声明周期后,会编写出更加的流畅的程序 应 ...
- android 的生命周期自我理解
android的active的生命周期,经过网站的blog学习,加上自己的理解总结如下: 第1种:全新的启动应用程序顺序 onCreate--->onStart---->onResume ...
- Android组件生命周期(二)
引言 应用程序组件有一个生命周期——一开始Android实例化他们响应意图,直到结束实例被销毁.在这期间,他们有时候处于激活状态,有时候处于非激活状态:对于活动,对用户有时候可见,有时候不可见.组件生 ...
- 详解 Android Activity 生命周期
从以下几个方面详细说一下Activity的生命周期: 1.回到主屏幕再打开和退出程序的时候. 2.屏幕旋转的时候. 3.打开其它的Activity的情况. 4.打开一个Layou透明的Activity ...
- [转]: 两分钟彻底让你明白Android Activity生命周期(图文)!
转自:http://blog.csdn.net/android_tutor/article/details/5772285 大家好,今天给大家详解一下Android中Activity的生命周期,我在前 ...
- Android Activity生命周期
从android api文档摘抄出来的activity生命周期图如下: Activity有如下四种状态 a.活动状态 activity处于屏幕前台,获取到了焦点可以和用户进行交互,同一时刻只有一个a ...
- Android Activity生命周期详讲
管理 Activity 生命周期 通过实现回调方法管理 Activity 的生命周期对开发强大而又灵活的应用至关重要. Activity 的生命周期会直接受到 Activity 与其他 Activit ...
- android Activity生命周期(设备旋转、数据恢复等)与启动模式
1.Activity生命周期 接下来将介绍 Android Activity(四大组件之一) 的生命周期, 包含运行.暂停和停止三种状态,onCreate.onStart.onResume.o ...
- Android Fragment 生命周期及其API使用(建议使用自定义View替换Fragment)
我为什么不主张使用Fragment Fragment:( Fragment就相当于一个有生命周期的View,它的生命周期被所在的Activity的生命周期管理 ) 生命周期回调说明: onAttach ...
随机推荐
- boost::thread 线程锁
1.boost锁的概述: boost库中提供了mutex类与lock类,通过组合可以轻易的构建读写锁与互斥锁. 2.mutex对象类(主要有两种): 1.boost::mutex(独占互斥类) --& ...
- iframe中的各种跳转方法(转)
一.背景A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,在D中跳转页面的写法区别如下. 二.JS跳转window.location.href.locatio ...
- php生成二维码
<?php $urlToEncode="163.com"; generateQRfromGoogle($urlToEncode); function generate ...
- 将VIM配置成强大的IDE(三)
上一节,我们知道了,我们了解了怎么配置插件的下下载. 现在,我们就可以去DIY我们的IDE了,主要介绍taglist插件和NERDTree插件,最终的结果是: 1.安装Taglist插件. Tagli ...
- C#编写自动关机程序复习的知识
首先一个程序第一要素是logo 在设置里面可以设置程序图标,在ICON里设置. ICON图标可以在网上下载. 这些都是表面功夫 程序中涉及到Buton.Label.Timer.Notiflcon控件 ...
- windows server 2012服务器IIS基本配置
- X/Open DTP——分布式事务模型
转载:http://www.cnblogs.com/aigongsi/archive/2012/10/11/2718313.html 这一几天一直在回顾事务相关的知识,也准备把以前了解皮毛的知识进行一 ...
- iOS 开发常用的一些工具
http://www.itjhwd.com/ios-tool/ 通用工具 HomeBrew:OS X上非常出色的包管理工具. 源码控制 Git:分布式版本控制系统和源码管理系统,其优点是:快和简单易用 ...
- BASLER 镜头选型白皮书
本文翻译自Basler镜头选型白皮书 有许多方法来进行镜头选型.本文将会讨论其中的指导原则,以帮助你在项目中选择合适的镜头.我们将讨论许多镜头的基本概念,比如镜头接口.图像大小.放大率.焦距.F数和光 ...
- windows相关小知识
获得本机MAC1 快捷键win+R打开运行窗口, 输入cmd回车进入控制台2 输入ipconfig -all 找到本地连接中的物理地址 根据IP获得MAC方法:1 进入cmd控制台,执行:ping ...