没有合适的资源?快使用搜索试试~ 我知道了~
首页Android Intent机制实例详解
资源详情
资源评论
资源推荐

Android Intent 机制实例详解(1)
Android
中提供了 Intent 机制来协助应用间的交互与通讯,或者采用更准确的说法
是,Intent 不仅可用于应用程序之间,也可用于应用程序内部的 Activity/Service 之间的交
互。Intent 这个英语单词的本意是“目的、意向”等,对于较少从事于大型平台开发工作的程
序员来说,这可能是一个不太容易理解的抽象概念,因为它与我们平常使用的简单函数/方
法调用,或者上节中提到的通过库调用接口的方式不太一样。在 Intent 的使用中你看不到
直接的函数调用,相对函数调用来说,Intent 是更为抽象的概念,利用 Intent 所实现的软件
复用的粒度是 Activity/Service,比函数复用更高一些,另外耦合也更为松散。
Android 中与 Intent 相关的还有 Action/Category 及 Intent Filter 等,另外还有用于广播
的 Intent,这些元素掺杂在一起,导致初学者不太容易迅速掌握 Intent 的用法。在讲解这些
名词之前,我们先来从下面的例子中感受一下 Intent 的一些基本用法,看看它能做些什
么,之后再来思考这种机制背后的意义。
理解 Intent 的关键之一是理解清楚 Intent 的两种基本用法:一种是显式的 Intent,即
在构造 Intent 对象时就指定接收者,这种方式与普通的函数调用类似,只是复用的粒度有
所差别;另一种是隐式的 Intent,即 Intent 的发送者在构造 Intent 对象时,并不知道也不
关心接收者是谁,这种方式与函数调用差别比较大,有利于降低发送者和接收者之间的耦
合。另外 Intent 除了发送外,还可用于广播,这些都将在后文进行详细讲述。
下面的一小节我们来看看显式 Intent 的用法。
显式的 Intent(Explicit Intent)
同一个应用程序中的 Activity 切换
我们在前面的章节已经讨论过 Activity 的概念,通常一个应用程序中需要多个 UI 屏
幕,也就需要多个 Activity 类,并且在这些 Activity 之间进行切换,这种切换就是通过
Intent 机制来实现的。
在同一个应用程序中切换 Activity 时,我们通常都知道要启动的 Activity 具体是哪一
个,因此常用显式的 Intent 来实现。下面的例子用来实现一个非常简单的应用程序
SimpleIntentTest,它包括两个 UI 屏幕也就是两个 Activity——SimpleIntentTest 类和
TestActivity 类,SimpleIntentTest 类有一个按钮用来启动 TestActivity,程序运行的截图如图
5.3 所示:



















安全验证
文档复制为VIP权益,开通VIP直接复制

评论1