Android第十章 Activity生命周期.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Activity生命周期 由__提供下载 预习检查 Activity有哪几种基本状态? Activity状态之间的转换时调用哪些函数? 掌握Activity的生命周期 掌握Activity各个回调函数的调用时机 本章目标 Activity的生命周期 Activity是一个用户界面的概念。Activity通常表示应用程序的一个屏幕。 Android中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具有自己的生命周期。 Activity有四种基本状态 Active:处于屏幕前景(当前task的栈顶Activity处于Active状态),同一时刻只能有一个Activity处于Active状态;简单地说,就是Activity取得了焦点。 Paused状态:处于背景画面状态,失去了焦点,但依然是活动状态;例如:被一个Dialog(部分)覆盖。 Stopped:不可见,但依然保持所有的状态和内存信息;例如:正在编辑短消息的时候,有电话拨入,电话的接听界面覆盖了整个屏幕。 Killed: Activity 被系统杀死回收或者没有被启动时处于 Killed状态。 Activity的状态转换 Activity被部分遮盖,进入Paused状态 Activity被完全遮盖,进入Stopped状态 Activity的状态转换 在 android.app.Activity类中,Android 定义了一系列与生命周期相关的方法,在我们自己的 Activity 中,只是根据需要复写需要的方法,Java 的多态性会保证我们自己的方法被虚拟机调用 void onCreate(Bundle savedInstanceState) void onStart() void onRestart() void onResume() void onPause() void onStop() void onDestroy() 演示示例1:Activity中各种状态的切换 onCreate() 和onDestroy() onCreate()方法是Activity开始时调用的方法,此方法在以下三种情况被调用 当Activity首次启动时,将使用一个null参数调用onCreate() 如果Activity已经运行,并在随后的某个时刻被结束,那么将使用来自onSavedInstanceState()的Bundle作为参数调用onCreate() 如果Activity已经运行,并且已将Activity设置为根据不同的手机状态(例如横向和纵向)提供不同的资源,那么将重新创建Activity并调用onCreate() onCreate() 和onDestroy() onDestroy()方法是Activity关闭时调用的方法。 一个Activity的整个生命周期是从第一次调用onCreate()方法和调用onDestroy()方法之间的这段时间 onStart()、 onRestart()和onStop() Activity在前台运行可能是因为他是首次启动,也可能是因为在被隐藏之后被调回前台,这些情况下都会调用onStart()方法 在停止后重新启动Activity时,将调用onRestart()方法 要停止Activity时,将调用onStop()方法 在一组onStart()和onStop()方法之间的时间,被称为可见生命周期 可见状态 前台状态 可见状态 onResume()和onPause() 在Activity初始启动、从停止状态重新启动后,或者清除了一个弹出对话框之后,在Activity回到前台之前将调用onResume()方法。 相仿,使用户远离Activity的任何操作(通常是激活另一个Activity)都将导致onPause()被调用。以Android手机为例,按下Home键,会让手机回到主屏幕,这个时候现有的Activity就会调用onPause()。 在一组onResume()和onPause()方法之间的时间,被称为前台生命周期。 Android的活动栈 Android 是通过一种 Activity 栈的方式来管理 Activity 的,一个 Activity 的实例的状态决定它在栈中的位置。 处于前台的 Activity 总是在栈的顶端,当前台的 Activity 因为异常或其它原因被销毁时,处于栈第二层的 Activity 将被激活,上浮到栈顶。当新的 Activity 启动入栈时,原 Activity 会被压入到栈的第二层。一个 Activity 在栈中的位置变化反映了它在不同状态间的转换。 Android的活动栈 除了最顶层即处在 Active 状态的 A

文档评论(0)

考试教学资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档