Activity和Intent

来源:互联网 发布:淘宝女包店铺排名 编辑:程序博客网 时间:2024/05/20 05:05

一个Android应用程序中一般都有不止一个的Activity,这多个Activity之间要相互通信和传递数据或者从一个Activity跳转到另一个Activity。这样才能使得一个应用程序可以有丰富的功能和多元化的界面。

Activity传递数据和相互跳转需要用到Intent对象。IntentAndroid程序中有很多的用途。我们现在主要关注它在两个Activity之间通信所起的作用。简单地说Intent就是Android对象提供的Activity之间传递数据和操作指令的载体。Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。一个Intent对象包含了一组信息,主要包含以下信息:

1.Componetname   指定Intent的的目标组件的类名称(即指定要启动的Activity的名称)

2.Action                  指定要启动的组件要执行什么样的操作

3.Data                   执行动作要操作的数据

4.Category             被执行动作的附加信息

5.Extras                  其它所有附加信息的集合,主要是一些键值对,在一个Activity中定义,通过Intent传递到另一个Activity

6.flags                   标志指示Android系统如何去启动一个Activity

下面通过例子来说明在两个Activity中间怎么使用Intent对象。

程序的主要流程为:在Activity01中有一个Button按钮,为这个Button按钮添加一个点击事件监听器,当我们点击这个Button时,触发单击事件。在事件的代码冲我们顶一个Intent对象,通过Intent对象的setIntent方法指定Componentname,并且在Activity01中传递一个键为value,值为传递的字符串参数stringOtherActivity。然后启动OtherActivity,在OtherActivity中的TextView控件中显示传递的这个string参数。

新建一个项目Activity_Intent。在项目中创建一个名为Activity01的的Activity对象。在Activity01的布局文件编写xml代码使得Activity01只有一个Button按钮。

Activity01.java

       

main.xml

       

src/org.idea.android文件夹下新建一个A名为OtherActivityActivity对象。OtherActivityres/layout文件夹下新建一个布局文件other.xmlother.xml文件中有一个TextView控件。需要说明的是新建的Activity要在AndroidManifest.xml文件中注册。

OtherActivity.java

       

other.xml

AndroidManifest.xml

      

 运行结果:

 首先显示的Activity01的界面

点击按钮之后显示OtherActivity的界面

 

原创粉丝点击