- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android应用程序组件中有一个生命周期,贯穿于创建到结束的整个周期。周期里面含有各种状态,这些状态对组件的生命周期起着至关重要的影响。 一、Activity生命周期 ??????? 1.Activity有三个状态 ??????? (1)活动(active)或称运行(running):屏幕前台的Activity(当前任务中栈顶的Activity),用来处理当前用户的请求。 ??????? (2)暂停(paused):指当前运行的Activity在屏幕上失去焦点但却对用户是可见的,也就是说用户能看得到它的界面,不过他是被当前Activity挡住了。暂停状态下的Activity仍是存活的(维持着所有状态和成员信息,屏幕上还会有它的窗体)。当前系统资源处于极度缺乏的情况下,这个状态下的Activity就会被干掉。 ??????? (3)停止(stopped):屏幕不再有它的窗体,但是它仍然保留着所有状态和成员信息。通常当系统其它地方需要更多的内存时,这个Activity就会被干掉。 ??????? 2.如果一个Activity处于暂停或停止状态时,系统要么从内存中清除它要么调用它的finish()销毁它或是简单地干掉它的进程。当用户再次调用了这个Activity,它就会重新开始并保存住先前的状态。 ??????? 3.Activity的生命周期的转变本质上是其内部状态间的转变,Android提供了如下几个protect方法:
Java代码 ?
void?onCreate(Bundle?savedInstanceState)? ??
void?onStart()? ??
void?onRestart()? ??
void?onResume()? ??
void?onPause()? ??
void?onStop()? ??
void?onDestroy()??
void onCreate(Bundle savedInstanceState)
void onStart()
void onRestart()
void onResume()
void onPause()
void onStop()
void onDestroy()
??????? ??????? 4.以上方法均属钩子方法,我们需要重写它们,以使状态改变时做出恰当的行为。所有的Activity必须要重写onCreate(),因为这个方法用来做初始化和组装Activity的工作。大多数情况下,最好也要重写onPause()方法,主要是针对用户发出停止请求的情况下,我们需要在这个方法里面做一些处理(这一点很重要,下面会有所解释)。实现这些方法时需要注意一点,方法内部第一句话一定要先调用父类版本的方法,例如:
Java代码 ?
protected?void?onPause()?{? ??
????super.onPause(); ??
}??
protected void onPause() {
super.onPause();
}
??????? 5.上面七个方法定义了Activity的整个生命周期,另外它们还有三个内嵌循环,如下: ??????? (1)Activity整体寿命(entire lifetime):这个循环发生在第一次调用onCreate()到最终调用onDestroy()期间。初始化工作在onCreate()中完成,释放所有剩余资源的工作在onDestroy()中完成。注意,这个循环过程是在同一线程中进行的。 ??????? (2)Activity可见寿命(visible lifetime):这个循环发生在调用onStart()时直到调用onStop()期间。在这段时间里,尽管这个Activity不会和用户进行交互,但用户能够在屏幕上看到它;也就是说这两个方法维护着Activity所需要的一些资源(针对于用户)。这两个方法可以多次调用,比如对Activity进行来回显示或隐藏的操作。 ??????? (3)Activity前台寿命(foreground lifetime):这个循环发生在调用onResume()时直到调用onPause()方法期间。在这段时间里,Activity在屏幕上是处于其他Activity的前面并与用户进行着交互。Activity会频繁地在暂停和重新状态之间相互转变。因此这两个方法中的代码需要做些轻量级的操作。 6. Activity生命周期图: ??????? 上图详细阐述了Activity生命周期循环的路径,它们都是通过状态间的转换而形成的。带颜色椭圆是状态转换过程中涉及到最主要的活动,长方形就是那些回调方法。 ??????? 从上图就可以看出那七个方法它们在Activit
文档评论(0)