android_activity_研究(一)
android中活动的概念(activity)是一个很重要的东东。这里有很多东东值得好好研究。最好的研究来源当然是官网啦,所以本人这里写一点对官网文章的研究心得。
一、活动(activity)的概念
在计算机世界,活动是一个类,是个类必然有很多它自己的属性、方法等,这个太抽象,不好理解;
在现实世界,活动就是一个界面,我们能看到的手机的界面,这个就好理解多了。
够简单吧!!如果国内出书的学者来解释这个东东的话,肯定是花一个篇章来解释这个概念,啰嗦啰嗦的,反而讲复杂了。官网的解释也就一句话而已~~
二、活动的状态
为了更好地理解活动的状态,咱不玩抽象。个人认为,计算机知识本身就是一个抽象的知识;抽象的知识用抽象的方法解释,那就等于没解释,这个往往也是国内闷骚的学者们喜欢的解释方式,因为这样方能显示他们的牛逼,不过他们确实像牛逼。
比如,有三个人,一个是A,一个是B,一个是C,C当然可以看到A和B了,所以就认为A和B是活动,C是用户。现在,C在一个屋子的外面,A和B在屋子的里面。A出来了,C看到他了,此时,A的状态就是活的;此时,B出来了,半个身子挡着A,此时,C可以看到B和A,但是B挡住了A的半个身子,此时,B是活的,A是暂停的;由于A是暂停的,当手机内存低的时候,系统会宰了他;此时,B把A的全身都挡住了,C看不到A了,此时A就是停止的状态,内存低的时候,系统还是会宰了他;更巧的是,此时系统的内训还真低了,系统真的把A给宰了,此时A的状态就是摧毁了。被摧毁的时候,A拥有的所有资源都被剥夺了。
经典的几大状态如下:
1. onCreate()(Bundle savedInstanceState);
活动刚创建时就会调用的。这里面,我需要做一切必须地初始化工作。还有一个参数是bundle类的。之前如果销毁的这个活动的参数被保存在bundle中,则在此方法中,可以通过bundle类再次找回这个鞋个数据;
2. onRestart()
之前活动被stop了吗?那么活动死灰复燃的时候,此方法派上用场。当然了,死灰复燃如果是重新create的话,那么调用的就是onCreate的方法,而不是这个方法了;
3. onStart()
此时的状态不伦不类,用户还是看不到界面;
用户看到界面了;
当前活动被暂停了。用户可以看到界面,但是无法交互操作了。只有当这个方法返回时,新的活动才能呈现出来;
6.onStop()
当前活动退居幕后;
嗝屁。我使用finish方法就会调用这个方法。
在onPause的时候,可能被系统宰了,因此,需要在该方法中保存该活动的数据,下次在oncreate的时候,还可以恢复。
android_activity_研究(一)的更多相关文章
- android_activity_研究(二)
这次开始玩玩活动的生命周期.废话不说,先搞个小应用,大体思路是:主界面有两个按钮,一个按钮按下后,出现第二个界面:另一个按钮按下后,出现第三个界面,真他妈简单. 一.主界面: 1. 主界面布局xml文 ...
- 闲来无聊,研究一下Web服务器 的源程序
web服务器是如何工作的 1989年的夏天,蒂姆.博纳斯-李开发了世界上第一个web服务器和web客户机.这个浏览器程序是一个简单的电话号码查询软件.最初的web服务器程序就是一个利用浏览器和web服 ...
- SQLSERVER聚集索引与非聚集索引的再次研究(上)
SQLSERVER聚集索引与非聚集索引的再次研究(上) 上篇主要说聚集索引 下篇的地址:SQLSERVER聚集索引与非聚集索引的再次研究(下) 由于本人还是SQLSERVER菜鸟一枚,加上一些实验的逻 ...
- 深入研究Visual studio 2017 RC新特性
在[Xamarin+Prism开发详解三:Visual studio 2017 RC初体验]中分享了Visual studio 2017RC的大致情况,同时也发现大家对新的Visual Studio很 ...
- 【初码干货】使用阿里云对Web开发中的资源文件进行CDN加速的深入研究和实践
提示:阅读本文需提前了解的相关知识 1.阿里云(https://www.aliyun.com) 2.阿里云CDN(https://www.aliyun.com/product/cdn) 3.阿里云OS ...
- 对一致性Hash算法,Java代码实现的深入研究
一致性Hash算法 关于一致性Hash算法,在我之前的博文中已经有多次提到了,MemCache超详细解读一文中"一致性Hash算法"部分,对于为什么要使用一致性Hash算法.一致性 ...
- SQLSERVER聚集索引与非聚集索引的再次研究(下)
SQLSERVER聚集索引与非聚集索引的再次研究(下) 上篇主要说了聚集索引和简单介绍了一下非聚集索引,相信大家一定对聚集索引和非聚集索引开始有一点了解了. 这篇文章只是作为参考,里面的观点不一定正确 ...
- 开源Word读写组件DocX 的深入研究和问题总结
一. 前言 前两天看到了asxinyu大神的[原创]开源Word读写组件DocX介绍与入门,正好我也有类似的自动生成word文档得需求,于是便仔细的研究了这个DocX. 我也把它融入到我的项目当中并进 ...
- 【移动端兼容问题研究】javascript事件机制详解(涉及移动兼容)
前言 这篇博客有点长,如果你是高手请您读一读,能对其中的一些误点提出来,以免我误人子弟,并且帮助我提高 如果你是javascript菜鸟,建议您好好读一读,真的理解下来会有不一样的收获 在下才疏学浅, ...
随机推荐
- javascript真假(true/false)值
下面列出的值被当做假(false): false null undefined 空字符串 ' ' 数字 0 数字 NaN $(document).ready(function(){ var array ...
- 微信小程序把玩(三十一)wx.uploadFile(object), wx.downloadFile(object) API
原文:微信小程序把玩(三十一)wx.uploadFile(object), wx.downloadFile(object) API 反正我是没有测通这两个API!!!!不知道用的方式不对还是其他的!! ...
- .NET错误提示之:无法更新EntitySet“TableName”因为它有一个DefiningQuery
使用LINQ 进行提交数据时发生的错误提示 原因:提交的对象表 没有设主键.
- CentOS7 无法使用yum命令,无法更新解决方法
前言 设置网卡开机自动启动 设置国内dns服务器系统 修改CentOS-Base.repo中的地址 所参考的文章地址 前言 刚安装完的CentOS7的系统,发现无法使用yum命令进行更新,在更新的时候 ...
- 用友的BS专用浏览器方案
T+的这个BS中的B是自己的专用浏览器,这样有以下好处 1.避免了公用浏览器比如IE 里的其它插件的干扰2.避免了各个操作系统不同版本和不同种类浏览器的兼容问题,且只需要维护一个版本3.避免了共用浏览 ...
- visual studio添加docker支持简记
很久以前学过一段时间的docker,那时装了电脑卡得受不了,学了一会就卸载了,最近电脑又装上了docker,感觉好像没有以前这么卡了,还是同一台电脑surface pro4, 试了一下visual s ...
- YxdIocp包含有支持大并发的TCP服务组件、HTTP服务组件、UDP服务组件、WebSocket服务组件
Delphi Windows IOCP 通讯模型封装,基于DIOCP.YxdIocp包含有支持大并发的TCP服务组件.HTTP服务组件.UDP服务组件.WebSocket服务组件,和TCP.UDP等基 ...
- 京东sdk商家上架接口调用问题总结
前言: 最近在做商家发布产品,调用京东sdk,发现问题很多,而且还是在我同事的帮助下完成的,摸索中,菜鸟还请高手门多多提携才好,入正题 首先是引用jd的sdk啦,京东sdk中发布商品需要调用一个 36 ...
- 树莓派中安装QT
树莓派中安装QT 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:WIN7 硬件:树莓派 步骤: 参考链接:http://qt-proje ...
- Mysql 自定义HASH索引带来的巨大性能提升
有这样一个业务场景,需要在2个表里比较存在于A表,不存在于B表的数据.表结构如下: T_SETTINGS_BACKUP | CREATE TABLE `T_SETTINGS_BACKUP` ( `FI ...