Android中页面跳转分两种情况,一是跳转不带值,还有一个是跳转带值。
先说简单情况,不带值跳转。
假设创建了应用,该应用包含两个类,FirstActivity和SecondActivity。要实现从FirstActivity中启动SecondActivity只需下面两行代码:
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
FirstActivity.this. startActivity(intent);
第一行代码创建一个Intent对象,将当前FirstActivity实例的引用和SecondActivity的类实例传递给Intent(Context packageContext,Class<?> cls),构造函数,初始化该对象。
第二行代码将这个Intent对象传递给startActivity(Intent)函数,该函数负责加载SecondActivity.class描述的Activity。
当然要页面跳转,SecondActivity.class中必须有onCreate函数,其中 setContentView(R.layout.activity_second); 必不可少,它的作用是将创建的activity_second.xml弹出。
这里有个问题需要注意,Activity必须在应用的AndroidManifest.xml文件中声明,否则无法启动。声明语言如下:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="…" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="….FirstActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name = "….SecondActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity> </application> </manifest>
SecondActivity与FirstActivity地位一样。从以上代码中可以看出,FirstActivity与SecondActivity分别通过<intent-filter>标签,与一个Intent过滤器相关联。其中省略号为包名。
下面介绍跳转时传值的情况。
首先得在FirstActivity.class中得到要传递的值,例如我得到如下的值:
EditText account = (EditText) this.findViewById(R.id.accountText);
我们之前创建了Intent对象
intent.putExtra("accountText",account.getText().toString());
这里第一个值是传值是所使用的名称,第二个是要传值的变量名。
我们还可以使用Bundle封装数据
Bundle bundle = new Bundle();
bundle.putString("accountText",account.getText().toString());
intent.putExtras(bundle);
注意以上传值的语句必须在startActivity(intent);之前。
以下是SecondActivity.class的代码
import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.TextView; public class SecondActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(new HandWritingImageView(this)); setContentView(R.layout.activity_second); this.showResult(); } private void showResult(){ TextView userNameView = (TextView) this.findViewById(R.id.userNameView); //获取数据 Intent it = this.getIntent(); Bundle bundle = it.getExtras(); String s = bundle.getString("accountText"); userNameView.setText(s); } }
我用Bundle传值的。userNameView是传值的目标。
相关推荐
本资料“Android编程快速入门——字节跳动”旨在帮助新手理解Android开发的基础概念,并提供实际操作的指导。 一、Android简介 Android是由Google领导的开放源代码操作系统,广泛应用于智能手机和平板电脑。它基于...
本篇文章将深入解析“Android新手入门1——项目源码”所涵盖的知识点,包括Android项目的创建、活动(Activity)的创建与管理、按钮的使用、页面跳转、页面间的消息传递以及Menu菜单的前端实现。 首先,Android项目...
这个压缩包文件“安卓Android源码——适合新手的简单记事本项目.zip”是一个专为初学者设计的Android应用项目,旨在帮助他们理解和学习Android应用开发的基础知识。项目中的源码是一个简单的记事本应用程序,它能...
在本章节中,“Google.Android开发入门与实战第12章.Android综合案例一——RSS阅读器实例”主要聚焦于Android应用程序开发中的一个实际应用场景——构建一个RSS阅读器。这个实例将帮助初学者理解如何将Android SDK的...
android入门级视频:Android基本组件介绍之Android应用的灵魂——Intent和Activity介绍与实例
11.2.3 华丽转身——实现多页面跳转 11.2.4 始终为用户做好服务——增加Service 11.2.5 细节决定成败——完善应用细节 11.3 成功就在眼前——应用测试和发布 11.3.1只欠东风——应用测试 11.3.2 可以赚钱了——发布...
在Android入门开发的世界里,实例化是学习的关键。本文将深入浅出地讲解如何通过具体的实例,轻松掌握Android开发的基础知识。"Activity04"这个文件名可能代表着一个关于Android活动中第四个实例的代码,这通常涉及...
在描述中提到的“android入门的第一个实例”,通常会包含以下几个关键步骤: 1. **创建项目**:首先,开发者会在Android Studio中创建一个新的Android项目。这将生成一个基本的项目结构,包括必要的文件和目录。 2...
11. 开发基本步骤:概括了开发Android应用的一般步骤,包括规划、UI设计、数据操作、多页面跳转、Service添加以及测试和发布。 12-16章,作者通过五个综合案例——RSS阅读器、个人GPS应用、豆瓣网客户端、在线音乐...
11.2.3 华丽转身——实现多页面跳转 11.2.4 始终为用户做好服务——增加Service 11.2.5 细节决定成败——完善应用细节 11.3 成功就在眼前——应用测试和发布 11.3.1只欠东风——应用测试 11.3.2 可以赚钱了——发布...
标题"(Framework7 移动webapp) Springboot 入门培训 7 页面路由跳转.zip"表明这是一个关于使用SpringBoot框架构建移动Web应用程序的入门教程,重点聚焦在第七部分——页面路由跳转。这里的"Framework7"是一个流行的...
11.2.3 华丽转身——实现多页面跳转 203 11.2.4 始终为用户做好服务——增加Service 203 11.2.5 细节决定成败——完善应用细节 203 11.3 成功就在眼前——应用测试和发布 204 11.3.1 只欠东风——应用...
### Google Android 入门到精通详解 #### 第一篇 Android系统结构和SDK使用 **1.1 系统介绍** Android是由Google开发的一款基于Linux内核的开源操作系统,它专为移动设备设计,如智能手机和平板电脑等。Android...
### Android入门到精通详解 #### 第一篇:Android系统结构和SDK使用 ##### 第1章:Android的系统介绍 **1.1 系统介绍** Android是由Google开发的一款基于Linux平台的开源操作系统,专为移动设备设计。它包含了...
Java语言是一种广泛应用于互联网开发、企业级应用、移动应用(如Android)等领域的高级编程语言。它的设计目标是实现“一次编写,到处运行”的跨平台能力。本篇将深入浅出地为Java初学者讲解其入门知识,帮助你快速...
在深入探讨Android组件之前,首先理解Android系统的基石之一——组件化设计。组件是Android应用程序的基础构建块,它们各自承担特定的任务,并通过明确的接口与其他组件交互。这种组件化设计允许开发者将应用程序...
Android系统介绍: Android是一种基于Linux平台的开源智能手机操作系统,由Google公司开发。它由操作系统层、中间件层和应用程序...这些知识点为Android开发奠定了坚实的基础,为开发者提供了从入门到精通的学习路径。
《Android记事本——Geolo版》是一款专为Android平台设计的简单易用的记事应用,适合初学者进行Android开发的学习与实践。这个项目旨在帮助开发者了解Android应用的基本架构,掌握用户界面(UI)设计,数据存储以及...
Activity间的跳转和数据传递通常依赖于Intent,使得Android应用具有高度的模块化和可组合性。 本章的学习内容将以“Android基本组件介绍之Android应用的灵魂——Intent和Activity介绍与实例”为主题,通过实际操作...
1. **Android Studio入门**:首先,你需要熟悉Android Studio,这是Google提供的官方集成开发环境(IDE)用于构建Android应用。了解其界面布局、项目结构以及如何创建新项目是必要的。 2. **项目结构**:理解...