现在的位置: 首页 > 综合 > 正文

android教程之intent对象

2018年02月05日 ⁄ 综合 ⁄ 共 1103字 ⁄ 字号 评论关闭

Intent对象是android各组件相互通信的工具,该对象可以显示Activity,可以启动服务,可以发送广播,通常Intent对象包括如下的一些属性:

        1.组件名称

         组件名称即ComponentName对象,该对象包含了目标组件的类名和包名,组件名称是可选的,如果设定了的话,Intent对象会被传给指定类的一个实例。如果不设定,android系统会根据其他信息来定位合适的目标。组件名称是使用setComponent(),setClass()或setClassName()来设定,使用getComponent()来获取。

         2.动作(Action)

        动作即为Intent要采取的行动。用一个字符串表示,android提供了很多自带的动作,可以浏览网页,拨打电话etc,也可以自定义Intent的动作,要注意到的是,要养成良好的习惯,用java包名的命名方式来命名,因为系统要求动作名是独一无二的。

         3.数据(Data)

        即为动作要操作的数据,android中使用uri的方式来指向一个数据。例如,如果Action为ACTION_EDIT,那么Data讲包含待编辑的数据URI.如果Action为ACTION_CALL,Data将为tel号码;电话号码的URI。如果Action为ACTION_VIEW,则Data为http;网络地址的URI;

        4,类别

即为执行动作的附加信息。举个例子,LAUNCHER_CATEGORY表示Intent的接收者应该作为顶级的launcher。ALTERNATIVE_CATEGORY表示当前的Intent是多个可选Intent动作中的一个。

5.数据类型

  显示指定Intent的数据类型(MIME)。一般Intent的数据类型能够根据数据本身进行判定,但是通过设置这个属性,可以强制采用显示指定的类型。

6.附加信息

使用Extra可以为组件提供信息,例如,如果要执行“”发送电子邮件“这个动作,可以将电子邮件的标题,正文保存到Extras里,传给电子邮件发送组件。

通过Intent这些属性,Intent可以对一次组件的通信动作,动作涉及的数据以及附加信息进行描述,android系统则根据此Intent的描述,负责找到对应的组件,将Intent传递给该组件。

二,显式启动Activity并传递数据

启动一个Activity的步骤如下:

1.创建一个Intent对象;2.指定当前的上下文,并交代要启动的Activity类;3.调用startActivity方法启动Activity,参数为Intent刚刚建立的Intent对象。

抱歉!评论已关闭.