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菜鸟,建议您好好读一读,真的理解下来会有不一样的收获 在下才疏学浅, ...
随机推荐
- Visual Studio 2015 和 Apache Cordova 跨平台开发入门
原文:Visual Studio 2015 和 Apache Cordova 跨平台开发入门(一) 基于 Windows 10 的 Visual Studio 2015 跨平台的应用开发主要分为基于V ...
- SQLServer 订阅过期解决方法
原文:SQLServer 订阅过期解决方法 由于分发数据库执行一个较长的事务,达到了系统预定的72小时,导致了该订阅过期,数据库分发代理已不可再启用,提示错误如下: 错误信息:已将此(这些)订阅标记为 ...
- 零元学Expression Blend 4 Chapter 22 以实作案例学习Frame及HyperlinkButton
原文:零元学Expression Blend 4 Chapter 22 以实作案例学习Frame及HyperlinkButton 本章将教大家如何以实作善用Blend4的内建功能-「Frame」以及「 ...
- Android零基础入门第54节:视图切换组件ViewSwitcher
原文:Android零基础入门第54节:视图切换组件ViewSwitcher 前面三期学习了ProgressBar系列组件,那本期开始一起来学习ViewAnimator组件. 一.ViewAnimat ...
- A Summaryof JDBC
Die Sonne gewinnen! I think it's easy to understand what is JDBC used for. Programer's program shoul ...
- kafka 遇到的错
D:\cluster\kafka_2.->.\bin\windows\kafka-topics.bat --create --zookeeper localhost: --replication ...
- Flot Reference flot参考文档
Consider a call to the plot function:下面是对绘图函数plot的调用: var plot = $.plot(placeholder, data, options) ...
- QT 线程池 + TCP 小试(三)实现最终功能
*免分资源链接点击打开链接http://download.csdn.net/detail/goldenhawking/4492378 有了TCP.线程池,我们就可以把他们连接起来.使用最简单的 QMa ...
- <iOS小技巧> 返回上级目录操作Goback()方法
Goback()方法功能:返回上一级界面,通过判断 popViewControllerAnimated 类型是否为空,来判断是present还是pop出来,然后直接做了releaseSelf操作: - ...
- 【原创】ABAP根据文件路径获取文件所在目录(续)
在上一篇文章<ABAP根据文件路径获取文件所在目录>中,我主要的思路是采用 “SPLIT dobj AT sep INTO TABLE result_tab” 句型将文件全路径按分隔符“\ ...