- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[Activity及生命周期
Android Activity生命周期
一般来说Android程序主要由下列4部分组成
Activity
Broadcast Receiver
Service
Content Provider
Activity 介绍
一个应用程序是由一个或者多个Activity组成
一个Activity代表了可以和用户进行交互的可视化界面。
Activity在Android应用的onCreate中 初始化通过布局管理添加各种View组件
通过setContentView(int) 方法可以将视图呈现出来
Broadcast Receiver介绍
Broadcast Receiver负责对外部事件做出响应
Broadcast Receiver不生成UI,是不可见的
Broadcast Receiver需要在程序中进行注册
应用程序可以通过Context.sendBroadcast()将自己的intent广播出去。其他程序通过自身的Broadcast Receivers截获后进行时间处理。
Service 介绍
service运行在后台,负责处理一些用户看不到,并且会有持续时间的事情。比如下载数据,播放音乐等。
service是跑在程序的主线程中,处理耗时的事件续
service没有用户界面
所有用户实现的service必须继承系统的Service类,并且在配置文件中进行注册。
Content Provider 介绍
数据在Android当中是程序私有的
Content Provider提供了多个程序间数据交互的机制。
Content Provider暴露出来一些标准的API来对数据进行操作:
query(Uri, String[], String, String[],String) :通过关键字查询数据
insert(Uri, ContentValues) :将一组数据插入到指定的地方
update(Uri, ContentValues, String, String[]) :更新数据
delete(Uri, String, String[]) :删除数据
Activity其实是继承了ApplicationContext这个类,我们可以重写以下方法,如下代码:
public class Activity extends ApplicationContext {
protected void onCreate(Bundle savedInstanceState);
protected void onStart();
protected void onRestart();
protected void onResume();
protected void onPause();
protected void onStop();
protected void onDestroy();
}
便于理解上图示中的生命周期见HelloAndroidActivity.java.我们运行调试。
通过图示和分析程序得出三种生命周期:
整体生命周期:onCreate()-……..- onDestory();
可视生命周期:onStart-……..- onStop();
活动生命周期(或者称为焦点生命周期):onResume()-……..- onPause();
1、程序启动运行Activity执行顺序:onCreate()-onStart()-onResume三个方法,见LogCat 。程序启动。
2、BACK键等退出销毁,Activity先后执行: onPause()-onStop()-onDestory()三个方法,见LogCat。程序销毁退出。
3、HOME键等运行中被打断时(比如突然打入电话),Activity先后执行: onPause()-onStop()这两个方法。此时程序并未退出,只是在保存于后台状态栈中。
4、再次启动应用程序时,则先后分别执行了onRestart()-onStart()-onResume()三个方法,重新调出程序到前台显示。
!!!引出一个问题,当我们按HOME键或程序运行中被打断时,我们应用的状态如何保存 (举例)? (见演示)
几点总结:
onCreate: 在这里创建界面 ,做一些数据的初始化工作。
onStart: 到这一步变成用户可见不可交互的。
onResume: 变成和用户可交互的,(在activity 栈系统通过栈的方式管理这些个Activity的最上面,运行完弹出栈,则回到上一个Activity)
onPaus
您可能关注的文档
- [科学家及研究成果.doc
- [90平米两室两厅装修效果图最经典的两室两厅装修效果图.doc
- [云阳县供电公司95598客户服务管理考核实施办法.doc
- [互联网专线业务接入服务合同1doc.doc
- [90平米两室两厅装修设计图90平米两室两厅装修.doc
- [互联网上的房事.doc
- [互联网企业并购风险识别与控制.doc
- [互动技术在远程课堂教学中的作用.doc
- [互联网专线租用协议-光纤.doc
- [科学主义和技术万能论的批判.doc
- 2025年春新北师大版八年级物理下册全册课件.pptx
- 2025年春新北师大版八年级物理下册全册教学课件.pptx
- 2025年秋季新北师大版八年级上册物理全册教学课件.pptx
- 2025年秋季新人教版九年级上册化学全册课件.pptx
- 2025年新人教版八年级上册物理全册课件.pptx
- 2025年秋季新人教版九年级上册化学全册教学课件(新版教材).pptx
- 新人教版七年级上册英语全册课件(2025年新版教材).pptx
- 锂离子电池前驱体磷酸铁合成方法研究现状及展望.docx
- 2024年东盟石油和天然气更新报告(英文版)-东盟.docx
- DB3209_T 1207.2-2022 建设工程档案管理 第二部分:房屋建筑工程文件归档和档案移交范围.docx
文档评论(0)