android 学习

intent

intent 是一种构造,应用程序可以通过它发出请求,这就像是发出求助信号。intent 可能像下面这样:

"Wanted: An application to help me look up a contact" 或 "Wanted: An application to help me display this image" 或 "Wanted: An application to perform this geographic-based search"

应用程序可以按照相似或互补的方式进行注册,表明它们有能力或有兴趣执行各种请求或 intent。比如:

"Available: Application ready and willing to present contact records in clear, concise manner" 或 "Available: Application ready and willing to perform a geographic search"

这些是 IntentFilter 的示例,下面将要讨论。

 




回页首

 

IntentFilter

应用程序通过一个称为 IntentFilter 的构造声明它们能够执行某些类型的操作。IntentFilter 可以在运行时进行注册,也可以在 AndroidManifest.xml 文件中设置。下面的代码片段取自一个对 SMS(文本)消息进行响应的 Android 应用程序:


清单 1. 对 SMS 进行响应的 Android 应用程序

                    
       <receiver class=".MySMSMailBox" >
            <intent-filter>
    	      <action android:value="android.provider.Telephony.SMS_RECEIVED" />
            </intent-filter>
    	</receiver>

 

* Android 应用程序的四种主要类型:活动、服务、接收器和 ContentProvider,显示用户界面(UI)元素的视图
 *
 * 活动
 * 活动是最常用的 Android 应用程序形式。活动在一个称为视图 的类的帮助下,为应用程序提供 UI。
 * 视图类实现各种 UI 元素,比如文本框、标签、按钮和计算平台上常见的其他 UI 元素。
 * 一个应用程序可以包含一个或多个活动。这些活动通常与应用程序中的屏幕形成一对一关系。
 * 应用程序通过调用 startActivity() 或 startSubActivity() 方法从一个活动转移到另一个活动。
 * 如果应用程序只需 “切换” 到新的活动,就应该使用前一个方法。
 * 如果需要异步的调用/响应模式,就使用后一个方法。在这两种情况下,都需要通过方法的参数传递一个 intent。
 * 由操作系统负责决定哪个活动最适合满足指定的 intent。
 *
 * 服务和接收器
 * 与其他多任务计算环境一样,“在后台” 运行着一些应用程序,它们执行各种任务。
 * Android 把这种应用程序称为 “服务”。服务是没有 UI 的 Android 应用程序。
 * 接收器是一个应用程序组件,它接收请求并处理 intent。
 * 与服务一样,接收器在一般情况下也没有 UI 元素。
 * 接收器通常在 AndroidManifest.xml 文件中注册。
 * 接收器的类属性是负责实现这个接收器的 Java 类。
 *
 * 用 ContentProvider 进行数据管理
 * ContentProvider 是 Android 的数据存储抽象机制。
 * 我们以移动设备上常见的一种数据为例:地址簿或联系人数据库。
 * 地址簿包含所有联系人及其电话号码,用户在使用手机时可能需要使用这些数据。
 * ContentProvider 对数据存储的访问方法进行抽象。
 * ContentProvider 在许多方面起到数据库服务器的作用。
 * 对数据存储中数据的读写操作应该通过适当的 ContentProvider 传递,
 * 而不是直接访问文件或数据库。可能还有 ContentProvider 的 “客户机” 和 “实现”。
 *
 * 视图
 * Android 活动通过视图显示 UI 元素。视图采用以下布局设计之一:
 * LinearVertical 后续的每个元素都排在前一个元素下面,形成一个单一列。
 * LinearHorizontal 后续的每个元素都排在前一个元素右边,形成一个单一行。
 * Relative 后续的每个元素相对于前一个元素有一定的偏移量。
 * Table 与 HTML 表相似的一系列行和列。每个单元格可以包含一个视图元素。
 * 选择一种布局(或布局的组合)之后,就可以用各个视图显示 UI。
 *
 * 视图元素由大家熟悉的 UI 元素组成,包括:
 * Button
 * ImageButton
 * EditText
 * TextView(与标签相似)
 * CheckBox
 * Radio Button
 * Gallery 和 ImageSwitcher(用来显示多个图像)
 * List
 * Grid
 * DatePicker
 * TimePicker
 * Spinner(与组合框相似)
 * AutoComplete(具有文本自动补全特性的 EditText)
 *
 * 视图是在一个 XML 文件中定义的。

 

 

参考:用 Eclipse 开发 Android 应用程序https://www6.software.ibm.com/developerworks/cn/education/opensource/os-eclipse-android/section2.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值