精品文档黑马程序员安卓教程:显式意图和隐式意图.docx

精品文档黑马程序员安卓教程:显式意图和隐式意图.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
显式意图和隐式意图 在An droid应用中,主要由四大组件构成,这四种组件是独立的,但又可相互调用,它们之间协调工 作来组成一个完整的 An droid应用,这些组件之间的相互通信是由 In te nt即意图来完成的。下面我们来介 绍An droid下的两种意图一一显式意图和隐式意图。 Explicit Intents (显式意 图):通过指定 An droid系统中的某一个具体的组件(通过语句 setComp onen t(a ndroid.c onten t.Comp onen tName) 或者 setClass(a ndroid.c onten t.C on text, java .Ian g.Class)),来 开启另一个类并使之运行。通常显式意图不会包含其他的信息,只仅仅用来开启一个当前应用内部已经定 义的Activity,用于用户和应用之间的交互。 Implicit Intents (隐式意图):不指定某一个具体的组件;但是,包含足够的信息使系统可以决定当前 可用的组件中哪一个是执行该意图的最好选择。 为了更好的理解显示意图和隐式意图,我们可以通过以下 DEMO来体会这两种意图的区别。 03_另外一个应用程序”的按钮时,则打开另- 在“人品计算器”的清单文件中,我们已经声明1.隐式意图 03_另外一个应用程序”的按钮时,则打开另- 在“人品计算器”的清单文件中,我们已经声明 新建一个工程命名为:03_另外一个应用程序。点击“ 个应用“人品计算器”中的第二个页面即 ResultActivity。 了该ResultActivity所对应的Intent,代码如例1-1: 例1-1 vactivity an droid:n amean droid:ic on an droid:n ame an droid:ic on an droid:label =com.itheima.rpcalc.ResultActivity =@drawable/ic_two =显示结果“ vinten t-filter acti on an droid:n ame=data an droid:scheme=com.itheima.rpcalc.SHOWRESULTithiema /data/vcategory an droid:n ame=/i nten t-filteran droid.i nten t.category.DEFAULT// activity acti on an droid:n ame= data an droid:scheme= com.itheima.rpcalc.SHOWRESULT ithiema /data / vcategory an droid:n ame= /i nten t-filter an droid.i nten t.category.DEFAULT / / activity 编写“ 03_另外一个应用程序”中的按钮点击事件,代码如例 例1-2 1-2 : public Intent intent = void ope nO 2(View view) { new Intent(); com.itheima.rpcalc.SHOWRESULT parse (ithiema:// 李四)); inten t.setActi on( ); inten t.setData(Uri. startActivity(i nten t); } 运行程序,点击按钮,通过隐式意图打开另外一个应用程序的页面,效果如图 1-1所示: 点击按钮之后 点击按钮之后 图1-2所示 图1-2的效果说明:在一个应用中我们可以通过隐式意图打开其他应用程序的界面,如果一个应用的 界面需要被其他应用所访问,那么可以通过隐式的意图来实现这一需求。若我们修改了 ResultActivity的名 称,假设为ResultActivity124,此时我们仍然可以打开该 Activity所对应的页面,这是因为:修改该 Activity 的名称并不影响inten t-filter的配置。这也体现了 An droid程序设计的低耦合。 2.显示意图 编写“ 03_另外一个应用程序”中的按钮点击事件,代码如例 1-3 : 例1-3 public void ope nO 2(View view) { Intent intent = new Inten t(); intent.setClassName( com.itheima.rpcalc , com.itheima.rpcalc.ResultActivity ); startActivity(i nten t); } 例1-3调用Intent.setClassName()方法来开启另一个 Activi

文档评论(0)

guoxiachuanyue + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档