`
zretc
  • 浏览: 20162 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android中的Intent标准跳转应用

阅读更多

 

    1)Intent无参数Activity跳转

 

  大部分的Android应用程序都是有多个页面(即 Activity)组成,那么Activity之间的跳转就成为了一个最重要的操作,我们在Android中使用Intent对象来实现界面之间的跳转。Intent实现界面之间的跳转常用两种语法形式实现:

 

  第一种:Intent intent = new Intent(Activity.this, 目标Activity.class);

 

  第二种:Intent intent = new Intent();

 

  Intent.setClass(Activity.this, 目标Activity.class);

 

    Ø  应用案例

 

   实现两个Activity之间的无参数跳转应用。

 

    Ø  实现效果参考图

 

 

 

    Ø  局部关键实现代码

 

    l  Activity_first.xml布局文件对按钮的声明

 

<Button

 

              android:id="@+id/btnGoto"

 

              android:layout_width="fill_parent"

 

              android:layout_height="wrap_content"

 

                  android:text="跳转至第2Activity"/>

 

    l  Activity_second.xml布局文件对按钮的声明

 

<Button

 

              android:id="@+id/btnGoto"

 

              android:layout_width="fill_parent"

 

              android:layout_height="wrap_content"

 

                  android:text="跳转至第1Activity"/>

 

    l  AndroidManifest.xml清单文件中对窗体的声明

 

<activity

 

           android:name=".FirstActivity"

 

           android:label="案例10.1 无参数跳转界面1">

 

       <intent-filter>

 

       <actionandroid:name="android.intent.action.MAIN"/>

 

   <categoryandroid:name="android.intent.category.LAUNCHER"/>

 

       </intent-filter>

 

           </activity>

 

           <activity

 

           android:name=.SecondActivity"

 

                  android:label="案例10.1 无参数跳转界面2"/>

 

     l  FirstActivty.java中【跳转至第2Activity】单击事件代码

 

               Intent intent = newIntent(FirstActivity.this,

 

                                SecondActivity.class);

 

              startActivity(intent);

 

     l  SecondActivity.java中【跳转至第1Activity】单击事件代码

 

               Intent intent = newIntent();

 

              intent.setClass(SecondActivity.this,                                          FirstActivity.class);

 

              startActivity(intent);

 

    2)   Intent带参数Activity跳转(使用Intent.putExtraBundle

 

窗体之间的跳转也需要参数的传递,我们在Android中实现窗体之间的参数传递主要有两种方式:一种是采用putExtra()方法;另一种是采用Bundle对象进行参数封装传递。

 

第一种:使用putExtra()方法实现参数传递

 

    Ø  方法语法:putExtra(String name, Object value);

 

    Ø  参数说明:name:代表参数的变量名称, value:代表参数的值

 

该方法为Intent对象中的一个方法,使用intent.putExtra(……)来实现参数的设置,那另一端接受方需要获取发送方传入的Intent对象,同时从Intent对象中通过设置的参数名称获取相应的参数值并进行处理,在这里要注意的是除字符串类型的参数外,其余类型的参数获取的时候都需要有默认值,以备无法正常获取参数时,使用默认值替代。

 

    Ø  应用案例

 

                实现两个窗体之间的跳转并使用Intent对象的putExtra方法完成参数

 

的传递。设置参数后,任然使用startActivity(intent)方法进行页面之间的跳转动作。

 

    Ø  实现参考图

 

 

 

    Ø  局部关键实现代码

 

    l  SendActivity.java中【发送消息】单击事件动作处理代码

 

            Intent intent = newIntent(SendActivity.this,

 

                     ReceiveActivity.class);

 

           String name = txtName.getText().toString();

 

           int age = Integer.parseInt(txtAge.getText().toString());

 

           intent.putExtra("name", name);

 

           intent.putExtra("age", age);

 

           startActivity(intent);

 

     l  ReceiveActivity.java中获取Intent携带参数并显示的处理代码

 

            Intent intent = this.getIntent();

 

           String name = intent.getStringExtra("name");

 

           int age = intent.getIntExtra("age", 0);

 

           this.txtMessage.setText("姓名:"+name+"\n年龄:"+age);

 

    第二种:使用Bundle对象实现参数封装后页面跳转传值

 

     Ø  构造方法:Bundle bundle = new Bundle();

 

     Ø  对象方法:putXXXX(String name, Object value); 设置传递参数,XXXX代表传递参数的类型。

 

     Ø  参数说明:name:代表参数的变量名称, value:代表参数的值

 

Bundel对象使用putXXXX()方法将待传递的参数封装到Bundle对象中,使用Intent对象的putExtras(Bundle bundle)方法将参数整体打包进行传递,要获取发送方传入的Bundel对象的时,使用getExtras()方法获取Bundel对象,同时使用getXXX(String name)方法获取Bundle中封装的某个具体参数的变量名称。在这里要注意的是除字符串类型的参数外,其余类型的参数获取的时候都需要有默认值,以备无法正常获取参数时,使用默认值替代。

 

    Ø  应用案例

 

实现一个新用户信息注册并显示注册信息的功能,该功能使用Bundle对象完成多参数的封装传递,并在接收方实现对Bundle封装数据的处理操作。

 

    Ø  实现参考图片

 

 

 

    Ø  局部关键实现代码

 

    l  RegisterActivity.java【马上注册】按钮单击事件处理代码

 

// 步骤1:获取编辑文本框中用户输入的数据

 

               String name = txtName.getText().toString();

 

               String dept = txtDept.getText().toString();

 

               String job = txtJob.getText().toString();

 

               String email = txtEmail.getText().toString();

 

               // 步骤2:创建Bundled对象并将数据进行封装

 

               Bundle bundle = newBundle();

 

               bundle.putString("name", name);

 

               bundle.putString("dept", dept);

 

               bundle.putString("job", job);

 

               bundle.putString("email", email);

 

               // 步骤3:创建Intent对象

 

               Intent intent = newIntent();

 

               intent.setClass(RegisterActivity.this,

 

ResultActivity.class);

 

               // 使用putExtras()方法将Bundle对象装载到Intent

 

               intent.putExtras(bundle);

 

startActivity(intent);

 

    l  ResultActivity.java 接受Bundle封装的数据并进行获取显示

 

// 步骤1:获取Intent对象

 

               Intent intent = this.getIntent();

 

               // 步骤2:使用getExtras()方法获取Bundle对象

 

               Bundle bundle = intent.getExtras();

 

               // 步骤3:使用getXXX(String name)方法获取Bundle中的对应数据

 

               String name = bundle.getString("name");

 

               String dept = bundle.getString("dept");

 

               String job = bundle.getString("job");

 

               String email = bundle.getString("email");

 

               this.txtMessage.setText("姓名:" + name + "\n部门:" +dept

 

+ "\n职位:" + job+ "\n电子邮箱:" + email);

 

 

 

  作者:中软卓越天津ETC

 

分享到:
评论

相关推荐

    Android通过Intent跳转地图应用(百度地图、高德地图)

    本篇文章将深入讲解如何使用Intent在Android应用中跳转到这些地图应用,并在用户未安装相应地图应用时提供备选方案,如打开网页版地图。 首先,我们需要了解Intent的基本结构。Intent通常由两部分组成:Action和...

    Android开发之Intent跳转到系统应用中的拨号界面、联系人界面、短信界面.

    Android Intent 跳转到系统应用中的拨号界面、联系人界面、短信界面 在 Android 开发中,Intent 是一个非常重要的概念,它允许不同的应用程序之间进行交互和通信。在本文中,我们将探讨如何使用 Intent 跳转到系统...

    Android程序间Intent跳转分析

    本文将深入探讨Android程序间Intent跳转分析的相关知识点。 首先,Intent是Android系统中的一种消息对象,用于封装一个动作(Action)以及动作涉及的数据(Data)。在描述中提到的"跳转分析器"是一个开发者工具,它...

    android intent 页面跳转

    本文将深入探讨“Android Intent”在页面跳转和数据传递中的应用,结合“Chapter06_Intent_01”示例进行详细解析。 一、Intent的基本概念 Intent是一个消息对象,它表达了应用的意图,告诉系统想要执行的操作。...

    Android开发Intent的传参页面跳转

    在Android应用开发中,Intent是连接应用程序组件的重要桥梁,它用于启动新的Activity或者Service,同时还可以传递数据。本文将深入探讨如何使用Intent进行页面跳转并传递参数。 首先,我们来了解一下Intent的基本...

    android的intent跳转

    在这个场景中,我们将关注Intent如何用于在Android应用中实现各种跳转,特别是与电话、联系人和短信相关的界面。 1. **拨号界面跳转**: - 使用`ACTION_CALL_BUTTON`行动,可以启动拨号界面,让用户直接进行拨号...

    android intent跳转

    ### Android Intent跳转详解 在Android开发中,`Intent`是一种非常重要的机制,它主要用于启动新的活动(Activity)或者向其他组件发送消息。通过Intent,我们可以实现Activity之间的跳转、数据传递等功能,这对于...

    Android从一个应用跳转到另一个应用

    本教程将详细讲解如何在Android应用中实现从一个应用跳转到另一个应用。 首先,我们需要了解Android中的Intent机制。Intent在Android系统中扮演着消息传递的角色,它用于启动活动(Activity)、服务(Service)或...

    Android Intent带返回值跳转Demo

    通过以上步骤,你可以实现Android应用中Activity间的带返回值跳转。熟练掌握这一技巧,有助于构建更复杂的交互流程。在实际项目中,还可以使用Parcelable或Serializable接口传递复杂对象,或使用Bundle传递更多类型...

    Android开发 两个Activity之间通过Intent跳转传值

    在Android应用开发中,Intent是连接应用程序组件的重要桥梁,它被用来启动新的Activity或Service,也可以传递数据。本文将深入探讨如何在两个Activity之间通过Intent进行数据传递。 首先,理解Intent的基本概念。...

    android:scheme 通过uri跳转到APP应用指定Activity

    此外,为了提供更好的用户体验,我们还可以在Activity中添加错误处理,当用户未安装我们的应用时,通过`adb shell am start -W -a android.intent.action.VIEW -d "myapp://..."`命令测试URI是否能正确跳转。...

    intent 页面跳转

    Intent页面跳转是Android应用中常见的功能,通常涉及Activity之间的交互。在这个场景下,我们点击一个按钮,从第一个页面(Activity)跳转到第二个页面(Activity)。下面将详细解释Intent的工作原理以及如何实现...

    android应用跳转界面

    接下来,我们将深入探讨Android应用中如何进行界面跳转。 首先,`Activity`是Android中的一个核心组件,它代表了应用的单一屏幕,可以看作是应用的一个窗口或一个界面。每个Activity都有自己的生命周期,包括创建、...

    android 利用intent调用activity 简明精炼的例子

    在Android应用开发中,Intent是连接应用程序组件的重要桥梁,它用于启动新的Activity或者服务,以及在组件间传递数据。Intent可以分为显式Intent和隐式Intent。本篇将重点讲解如何利用Intent在Android中调用Activity...

    简单intent的跳转,不传送数据

    在Android应用开发中,Intent是连接各个组件的重要桥梁,它用于启动其他Activity、Service或BroadcastReceiver,甚至可以启动意图过滤器。在这个简单的示例中,我们关注的是如何使用Intent进行页面间的跳转,而不...

    android ,跳转到代码(intent)

    本文将深入探讨Intent的概念、类型、创建与使用,以及如何通过Intent在Android应用程序中实现页面跳转。 Intent是Android系统中一个核心的概念,主要用于组件间的通信。在Android四大组件(Activity、Service、...

    Android2个App之间跳转

    4. **处理权限**: 如果目标应用需要权限才能被调用,需要在AndroidManifest.xml中声明,同时在调用方应用中处理权限请求。 现在,让我们看下在Android Studio中如何操作: 1. **创建项目**: 打开Android Studio,...

    intent页面跳转

    在Android应用开发中,Intent是连接应用程序组件的重要机制,它被用来启动新的...在MyIntent这个示例项目中,可能包含了实现这一功能的具体代码,通过查看和学习这些代码,你可以更好地理解Intent在实际应用中的运用。

    android intent 代码

    在Android开发中,Intent是一个非常重要的概念,它用于在组件之间传递消息,是Android系统启动服务、启动或跳转Activity的主要手段。本篇文章将详细解释Intent的基本使用以及如何通过Intent实现在两个Activities之间...

Global site tag (gtag.js) - Google Analytics