Android开发入门(二)使用意图 2.6 理解Intent对象

到目前为止,已经了解了如何使用Intent对象去调用其他activity。接下来说一说Intent对象是如何使用 的。

1. 可以通过给Intent的构造器传递一个action:

startActivity(new Intent

("net.learn2develop.SecondActivity"));

2. 可以直接指定Activity组件,像这样:

startActivity(new Intent(this,SecondActivity.class));

3. 可以给Intent对象传递 一个action常量和data:

Intent i = new Intent(android.content.Intent.ACTION_VIEW, 

Uri.parse("http://www.amazon.com"));
startActivity(i);

action部分定义了“你想做什么”,data部分包含了目标activity要执行的数 据。也可以通过setData()方法给Intent对象传递data:

Intent i = new Intent

("android.intent.action.VIEW");
i.setData(Uri.parse("http://www.amazon.com"));

上面的例子,通过特定的URL,指定了想要访 问的网页。之后,Android系统将查找那些能够满足要求的activity。这个过程叫做“Intent解析”。

对一些intents而言,没有必要设置data。例如,想要从Contacts应用中挑选一个联系人,可以设定 action,同时使用setType()方法设置MIME类型:

Intent i = new Intent

(android.content.Intent.ACTION_PICK);
i.setType(ContactsContract.Contacts.CONTENT_TYPE);

setType()方法明确地指定了MIME数据类 型,同时也表明了返回数据的类型。ContactsContract.Contacts.CONTENT_TYPE的MIME类型是 "vnd.android.cursor.dir/contact"。

除了指定action,data,type,一个Intent对象也 可以指定一个category。category把activities分组成“逻辑单位”,这样,Android系统就可以使用 category做更“长远”地过滤。下一节教程将会详细地说说category属性。

总结一下,一个Intent对 象可以包含如下信息:

Action

Type

Data

Category

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/extra/

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
, android入门 概念
, 对象
, action
, android 过滤
, android intent
, intent
, category
, 对象android
, 一个
Intent传递对象
intent隐式意图、intent 传递对象、intent传对象、安卓intent传递对象、intent传递map对象,以便于您获取更多的相关知识。

时间: 2024-08-03 08:23:34

Android开发入门(二)使用意图 2.6 理解Intent对象的相关文章

Android开发入门系列

Android开发入门(二十)内容提供者 20.3 经过预定义的查询字符 Android开发入门(二十)内容提供者 20.2 ContentProvider的使用 Android开发入门(二十)内容提供者 20.1 数据共享 Android开发入门(十九)数据库 19.3 预创建数据库 Android开发入门(十九)数据库 19.2 使用数据库 Android开发入门(十九)数据库 19.1创建数据库辅助类 Android开发入门(十八)文件 18.4使用静态资源 Android开发入门(十八)

Android开发入门(二十)内容提供者 20.1 数据共享

在上一章节中,我们介绍了数据持久化的几种方法:首选项,文件,以及数据库.在保存复杂的数据结构 时,推荐使用SQliteDatabase.但是,共享数据就成了一种挑战,因为,数据库只对创建它的程序包可用. 在这一章节中,将会介绍Android特有的数据共享方式:使用ContentProvider.也会介绍如何使用内 置的ContentProvider,以及创建自己的ContentProvider,以便在多个程序包之间共享数据. 在 Android中,共享数据的推荐方式是使用ContentProvi

Android开发入门之Notification用法分析_Android

本文实例讲述了Android中Notification用法.分享给大家供大家参考,具体如下: Notification可以理解为通知的意思一般用来显示广播信息 用Notification就必须要用到NotificationManager 想用Notification一般有三个步骤,如下所示 ① 一般获得系统级的服务NotificationManager. 调用Context.getSystemService(NOTIFICATION_SERVICE)方法即可返回NotificationManag

Android开发入门之Notification用法分析

本文实例讲述了Android中Notification用法.分享给大家供大家参考,具体如下: Notification可以理解为通知的意思一般用来显示广播信息 用Notification就必须要用到NotificationManager 想用Notification一般有三个步骤,如下所示 ① 一般获得系统级的服务NotificationManager. 调用Context.getSystemService(NOTIFICATION_SERVICE)方法即可返回NotificationManag

android开发-Android开发入门初学遇到的问题

问题描述 Android开发入门初学遇到的问题 Android开发入门学习,使用的是<第一行代码Android>郭霖著在学习至2.2.5 在活动中使用Toast中产生如下疑问,期待各位前辈帮我解答图中为输入的代码 问题1.书中原话是可以通过findViewById()方法获取到在布局文件中定义的元素,这里我们传入R.id.button 1,来得到按钮的实例,这里的按钮的实例是什么意思能否麻烦详细解释一下. 问题2.书中说findViewById()返回的是一个View对象,我们需要向下转型将它

android开发-Android开发入门学习遇到的问题

问题描述 Android开发入门学习遇到的问题 Android开发入门学习,使用的是<第一行代码Android>郭霖著其中在2.2.6在活动中使用Menu中遇到问题,书中说打开FirstActivity,重写onCreateOptionsMenu()方法,完成书中代码之后出现截图中呈现的问题,想麻烦各位帮忙解答.拜托各位了 解决方案 用冒号,case R.id.remove_item : case 后面是冒号 解决方案二: 导包呀!不是提示啦!看看你吧 解决方案三: menuitem那里 im

android开发+-Android开发入门学习中遇到的问题

问题描述 Android开发入门学习中遇到的问题 Android初学者,使用的书籍是<第一行代码Android>在书中2.2.2创建和加载布局中在布局文件中编辑添加了按钮之后,为什么要在活动中加载这个布局,原理是什么? 解决方案 布局文件相当于画面,activity相当于画布,在activity中加载布局文件才会显示出布局文件中的布局 解决方案二: 布局就是传给Activity,在安卓手机界面中显示出来

请推荐一本Android开发入门的书籍给我

问题描述 看着现在这些手机app真的很火爆,我也想学习个来玩玩,请推荐一本你们认为不错的Android开发入门的书籍给我,然后再推荐一本进阶的.谢谢啦.. 解决方案 解决方案二:推荐Android版块<Android版块开发资源大汇总>同是新手,相互帮衬

Kinect for Windows SDK开发入门(二)基础知识 上

上篇文章介绍了Kinect开发的环境配置,这篇文章和下一篇文章将介绍Kinect开发的基本知识,为深入研究Kinect for Windows SDK做好基础. 每一个Kinect应用都有一些基本元素.应用程序必须探测和发现链接到设备上的Kinect传感器.在使用这些传感器之前,必须进行初始化,一旦初始化成功后,就能产生数据,我们的程序就能处理这些数据.最后当应用程序关闭是,必须合理的释放这些传感器. 本文第一部分将会介绍如何探测初始化几释放传感器,这是非常基础的话题,但是对于基于Kinect开