Andorid开发之Activity学习详解

Andorid开发之Activity学习详解

ID:37908466

大小:191.87 KB

页数:5页

时间:2019-06-02

Andorid开发之Activity学习详解_第1页
Andorid开发之Activity学习详解_第2页
Andorid开发之Activity学习详解_第3页
Andorid开发之Activity学习详解_第4页
Andorid开发之Activity学习详解_第5页
资源描述:

《Andorid开发之Activity学习详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ActivityAndroid中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具有自己的生命周期(见http://www.cnblogs.com/feisky/archive/2010/01/01/1637427.html,由系统控制生命周期,程序无法改变,但可以用onSaveInstanceState保存其状态)。对于Activity,关键是其生命周期的把握(如下图),其次就是状态的保存和恢复(onSaveInstanceStateonRestoreInstanceState),以及Activity

2、之间的跳转和数据传输(intent)。Activity中常用的函数有SetContentView()findViewById()finish()startActivity(),其生命周期涉及的函数有:1.voidonCreate(BundlesavedInstanceState)2.voidonStart()3.voidonRestart()4.voidonResume()1.voidonPause()2.voidonStop()3.voidonDestroy()注意的是,Activity的使用需要在Manifest文件中添加相应的

3、>,并设置其属性和intent-filter。IntentAndroid中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。在SDK中给出了Intent作用的表

4、现形式为:通过Context.startActivity()orActivity.startActivityForResult()启动一个Activity;通过Context.startService()启动一个服务,或者通过Context.bindService()和后台服务交互;通过广播方法(比如Context.sendBroadcast(),Context.sendOrderedBroadcast(),Context.sendStickyBroadcast())发给broadcastreceivers。Intent属性的设置,包括以下几点:(以

5、下为XML中定义,当然也可以通过Intent类的方法来获取和设置)(1)Action,也就是要执行的动作SDk中定义了一些标准的动作,包括当然,也可以自定义动作(自定义的动作在使用时,需要加上包名作为前缀,如"com.example.project.SHOW_COLOR”),并可定义相应的Activity来处理我们的自定义动作。(2)Data,也就是执行动作要操作的数据Android中采用指向数据的一个URI来表示,如在联系人应用中,一个指向某联系人的URI可能为:content://contacts/1。对于不同的动作,其URI数据的类型是不同的(

6、可以设置type属性指定特定类型数据),如ACTION_EDIT指定Data为文件URI,打电话为tel:URI,访问网络为http:URI,而由contentprovider提供的数据则为content:URIs。(3)type(数据类型),显式指定Intent的数据类型(MIME)。一般Intent的数据类型能够根据数据本身进行判定,但是通过设置这个属性,可以强制采用显式指定的类型而不再进行推导。(4)category(类别),被执行动作的附加信息。例如LAUNCHER_CATEGORY表示Intent的接受者应该在Launcher中作为顶级应用

7、出现;而ALTERNATIVE_CATEGORY表示当前的Intent是一系列的可选动作中的一个,这些动作可以在同一块数据上执行。还有其他的为ConstantMeaning(5)component(组件),指定Intent的的目标组件的类名称。通常Android会根据Intent中包含的其它属性的信息,比如action、data/type、category进行查找,最终找到一个与之匹配的目标组件。但是,如果component这个属性有指定的话,将直接使用它指定的组件,而不再执行上述查找过程。指定了这个属性以后,Intent的其它所有属性都是可选的。(

8、6)extras(附加信息),是其它所有附加信息的集合。使用extras可以为组件提供扩展信息,比如,如果要

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。