之前写过一篇文章是关于Android 的Activity跳转的,但当中没涉及到Activity的消息的传递。利用Bundle是一种比较方便的办法。
程序的效果是活动A向B跳转的同时发送一字符串,B读出字符串。
"先在AndroidManifest.xml中定义一个新的Activity,target:
"
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ray.test"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".TestBundle"
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=".Target"></activity>
</application>
<uses-sdk android:minSdkVersion="3" />
</manifest>
第一个活动的代码如下:
package com.ray.test;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.MotionEvent;
public class TestBundle extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
public boolean onTouchEvent(MotionEvent event) {
Intent intent = new Intent();
intent.setClass(TestBundle.this, Target.class);
Bundle mBundle = new Bundle();
mBundle.putString("Data", "ray'blog");//压入数据
intent.putExtras(mBundle);
startActivity(intent);
finish();
return super.onTouchEvent(event);
}
}
将要跳转到的活动代码:
package com.ray.test;
import android.app.Activity;
import android.os.Bundle;
public class Target extends Activity{
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Bundle bundle = getIntent().getExtras();
String data=bundle.getString("Data");//读出数据
setTitle(data);
}
}
分享到:
相关推荐
在这个小例子中,我们将深入探讨如何在Android的Activity之间使用`Bundle`进行数据传递。 首先,让我们了解`Bundle`的基本使用方法。创建一个`Bundle`对象,然后通过`putXXX`方法添加数据。`XXX`代表数据类型,例如...
本示例将深入探讨如何在Android活动中利用Bundle进行通信。 首先,理解Activity的基本概念至关重要。Activity是Android系统中的窗口,它负责与用户交互,显示UI元素,并处理用户的输入事件。一个应用程序可以包含多...
例如,在上面的实例中,开发者使用 Bundle 来存储用户输入的信息,然后将其传递给下一个 Activity,以便显示用户的信息。 与 SharedPreferences 相比,Bundle 并不是一种持久化的存储方式,它的数据不是持久化状态...
标题“android bundle message”暗示我们将探讨如何在Android应用中使用Bundle来传递消息和数据。在这个源码中,我们可以期待看到如何创建、添加键值对以及如何在接收端提取这些数据。 首先,让我们理解什么是...
在`BundleTest`项目中,可能包含了一些示例代码,演示了如何在Activity间使用Bundle交换数据。通过查看和运行这个项目,你可以更深入地了解这些概念,并学习实际应用场景。 总之,理解和熟练掌握Bundle与Activity...
Bundle,全称为“软件包”,在Android系统中扮演着数据容器的角色,它允许我们存储和恢复键值对数据。Bundle支持的数据类型包括基本类型(如int、float、String等)、集合类型(如ArrayList、HashMap等)以及...
`Bundle`是Android中的一个类,用于存储键值对,它可以存储各种类型的数据,如字符串、整数、浮点数、布尔值甚至是其他对象。当我们需要传递复杂的数据时,可以将数据封装到`Bundle`中,然后通过Intent将`Bundle`...
现在我们深入探讨`Bundle`在Android中的作用、使用方式以及它背后的实现机制。 1. **Bundle的作用** - 数据传递:`Bundle`是Android中传递数据的主要手段之一,特别是在Activity之间的跳转和Fragment的实例化过程...
为了更好地理解这个过程,你可以查看源代码,学习如何在实际应用中使用Intent和Bundle。这将有助于提升你在Android开发中的能力,特别是在处理组件间通信和数据传递方面。此外,了解如何序列化和反序列化Parcelable...
本篇文章将深入探讨如何在Android项目中使用Preference,通过实例代码来展示其用法。 一、Preference概述 Preference是Android SDK中的一个类,位于`android.preference`包下,它为应用程序提供了用户设置界面的...
在Android中,如果要将复杂对象(如自定义类实例)放入`Bundle`,对象需要实现`Parcelable`接口。`Parcelable`是Android平台提供的一种高效的数据序列化方式,它比`Serializable`更快,更适合用于内存和Intent传输。...
当需要在不同的Activity之间传递数据时,我们通常会使用Intent对象,而Intent中的Bundle就是用来存储和传递这些数据的重要工具。本篇文章将深入探讨如何利用Bundle在Android的Activity之间传递消息。 Bundle,全称...
`Bundle1.zip`这个压缩包很可能是包含了一个或多个Android项目的源代码示例,专门用来演示如何使用`Bundle`来传递数据。`Bundle`是Android中的一个键值对存储容器,类似于Java中的`HashMap`,但具有序列化能力,可以...
总的来说,Bundle是Android开发中常用的数据传递工具,熟练掌握其使用能有效提升开发效率。通过理解Activity和Fragment的生命周期以及Bundle的工作原理,开发者可以更好地设计和管理应用程序的数据流。
本示例将详细介绍如何在Android应用中使用Fragment。 1. **Fragment的生命周期** Fragment有自己的生命周期,包括onAttach(), onCreate(), onCreateView(), onViewCreated(), onStart(), onResume(), onPause(), ...
接下来,文档说明了如何使用Eclipse创建和测试第一个Android应用HelloWorld,包括创建Android项目、配置项目依赖和运行项目。这是一个让开发者能够亲身体验Android应用开发流程的入门级示例。 最后,文档介绍了如何...
本文将详细讲解如何通过Intent使用Bundle在Android中传递对象。 首先,我们需要知道在Android中,如果想要通过Intent传递一个对象,这个对象必须是可序列化的。在Java中,有两种基本的序列化方式:`java.io....
在这个“Android应用源码之Bundle1_Bundle.zip”压缩包中,我们可以深入理解`Bundle`的使用方法和实现细节。 1. **Bundle的创建与初始化**: - `Bundle`对象可以通过调用`new Bundle()`来创建。在创建后,我们可以...
通过学习这个实例,初学者可以更好地理解如何在Android应用中集成本地代码,以及如何在实际项目中使用JNI和NDK。 总之,`adt-bundle`、JNI和NDK是Android开发中的重要工具,它们使得开发者可以充分利用Java和C/C++...
【Android Eclipse ADT Bundle】是Android开发者们广泛使用的集成开发环境(IDE),它基于Eclipse平台,专门为Android应用开发提供了一整套工具和服务。这个工具包对于初学者和专业开发者来说都是一个强大的选择,...