第五章 Android的Intent和Broadcast.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章 Android的Intent和Broadcast

IC-MSP V1.0 IC-MSP V1.0 IC-MSP V1.0 Android课件 Android应用程序的核心---Intent 一、Intent是什么? Intent是Android的灵魂,程序跳转和传递数据的时候基本上就是靠Intent,理解Intent对应用编程很有帮助,在Android的官方API里,对Intent的定义为:An Intent is an abstract description of an operation to be performed。即一个Intent就是一个对将要执行的操作的抽象的描述。具有以下三种形式: 1)通过startActivity(intent)方法来启动一个新的Activity; 2)通过broadcast Intent机制可以将一个Intent发送给任何对这个Intent感兴趣的BroadcastReceiver。 3)通过startService(Intent)或者bindService(Intent,ServiceConnection,int)来和后台的Service进行交互。 关于广播Broadcast和服务Service部分后面再讲。 (一)用Intent启动一个新的Activity Intent最常用的用途就是连接一个应用当中的各个Activity,如果我们把Activity比作积木的话,那么Intent就好像是胶水,把不同的积木粘起来,构成我们搭建的房子。在程序当中如果要启动一个Activity的话,通常我们会调用startActivity方法,并把Intent作为参数传递进去, 代码如:startActivity(myIntent); 这个Intent或者指定了一个Activity,或者里边只包含了选定Activity的信息,但是具体启动哪个Activity由系统去决定,Android的系统负责挑选一个最满足匹配挑选条件的Activity。 Android应用程序的核心---Intent 1、启动一个特定的Activity 启动一个特定的Activity是非常简单的事,只需要将当前Context和这个Activity的class作为参数构造Intent,然后再将这个Intent作为参数传递给startActivity方法即可,代码如下: Intent intent = new Intent(CurrentActivity.this,OtherActivity.class); startActivity(intent); 当执行了startActivity(intent)方法后,一个新的Activity就会被创建,并且移到整个Activity的堆栈顶部。 2、启动一个未指明的Activity 在程序当中很多时候我们并不去关心启动哪个Activity,而是将我们想启动的那个Activity的描述信息放置到Intent里边,然后让系统去寻找和匹配合适的Activity来启动,这样做是非常有好处的。比如对于第三方的Activity,它只描述自己在什么情况下被执行,如果我们启动Activity的描述信息正好和第三方Activity的描述相匹配,那么这个第三方的Activity就被启动了。代码如下: Intent intent=new Intent(Intent.ACTION_DIAL,Uri.parse(“tel:115-1345:)); startActivity(intent); 我们并没有指定哪个Activity去执行,只是把我们对启动Activity的描述信息放到Intent当中,那么当执行startActivity(intent)方法后,Android系统会自动寻找,到底哪个Activity最合适。最后它根据描述信息找到处理电话Activity,然后启动,执行。 Android应用程序的核心---Intent 3、处理一个Activity的返回值 前面两种启动Activity没有返回值,即这两种方式启动完Activity,执行完后,不会返回数据给前一个Activity。所以Android提供了另外一种方式来处理这种需要返回数据的方法。 startActivityForResult(Intent)方法用于启动一个Activity并且新的Activity执行完后需要返回到启动它的Activity来执行回调函数。如: public void onClick(View v) { Intent intent1 = new Intent(ActivityMain.this, Activity1.class); intent1.putExtra(activityMain, 数据来自activityMain); //下面方法的REQUEST_CODE值传递给了

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档