Android 使用Intent实现Activity跳转和数据传递


笔记内容:

使用Intent实现Activity之间的跳转

使用Intent实现Activity跳转时数据的传递

知识重点:

  • 实现跳转

在编写一个Android应用时,通常需要在几个Activity之间实现跳转。如何实现跳转,可以使用Intent对象。

在Eclipse中新建一个Android项目,因为需要实现多个Activity跳转,所以建立两个文件Android_02.java和Android_02_02.java以及main.xml和main_02.xml两个界面配置文件。通过点击第一个界面的按钮跳转到第二个界面,首先需要修改main.xml文件。添加如下代码:

<Button android:id="@+id/button" android:layout_width="fill_parent" android:layout_height="wrap_content"/>

然后在Android_02.java文件中中创建一个按钮对象。并且为按钮添加监听器,当按钮被按下时执行创建Intent对象并实现跳转。见如下代码:

 mybutton.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { Intent intent = new Intent(); intent.setClass(Android_02.this, Android_02_02.class);//从前一个Activity跳转到后一个Activity startActivity(intent); } });

简单分析下代码,创建了Intent对象,并且使用对象的setClass(Android_02.this, Android_02_02.class)方法实现跳转,参数1是当前类名,而第2个参数用来设置跳转的目的。通过点击按钮跳转到Android_02_02这个Activity。如图:

第一个Activity

点击第一个按钮后转到了第二个Activity

  • 数据的传递

实现在跳转过程中,从第一个Activity向第二个Activity传递数据是很简单的。首先在按钮监听器中创建Intent对象。和跳转的代码完全一样,只不过在其中多一条代码,通过对象的putExtra("value", "我是传递的内容")方法向第二个Activity传递数据,第一个参数是传递参数的名称,第二个参数是参数的内容。这样就向第二个Activity传递了一个参数。如下代码:

 mybutton.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { Intent intent = new Intent(); intent.putExtra("value", "我是传递的内容");//向Android_02_02传递了一个String类型值 intent.setClass(Android_02.this, Android_02_02.class);//从前一个Activity跳转到后一个Activity startActivity(intent); } });

那么第二个Activity如何接收这个参数呢。通过

Intent intent = getIntent();

获得参数内容。并且将参数的内容显示作为标签的内容。如下代码:

Intent intent = getIntent();//得到上一个Activity传递的值 String str=intent.getStringExtra("value"); text.setText(str);//将传递的值显示在标签上

执行如图:

点击第一个按钮后跳转到第二个Activity且传递了参数

相关内容