Bundle类是一个key-value对,“A mapping from String values to various Parcelable types.”

类继承关系:

Java.lang.Object

Android.os.Bundle

Bundle类是一个final类:

public final class

Bundle

extends Objectimplements Parcelable Cloneable

两个activity之间的通讯可以通过bundle类来实现,做法就是:

(1)新建一个bundle类

Bundle mBundle = new Bundle();

(2)bundle类中加入数据(key -value的形式,另一个activity里面取数据的时候,就要用到key,找出对应的value)

mBundle.putString("Data", "data from TestBundle");

(3)新建一个intent对象,并将该bundle加入这个intent对象

Intent intent = new Intent();

intent.setClass(TestBundle.this, Target.class);

intent.putExtras(mBundle);

完整代码如下:

android mainfest.xml如下:

package="com.tencent.test"

android:versionCode="1"

android:versionName="1.0">

android:label="@string/app_name">

两个类如下:intent从TestBundle类发起,到Target类。

类1:TestBundle类:

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class TestBundle extends Activity {

private Button button1;

private OnClickListener cl;

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

button1 = (Button) findViewById(R.id.button1);

cl = new OnClickListener(){

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

Intent intent = new Intent();

intent.setClass(TestBundle.this, Target.class);

Bundle mBundle = new Bundle();

mBundle.putString("Data", "data from TestBundle");//压入数据

intent.putExtras(mBundle);

startActivity(intent);

}

};

button1.setOnClickListener(cl);

}

}

类2: Target

import android.app.Activity;

import android.os.Bundle;

public class Target extends Activity{

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.target);

Bundle bundle = getIntent().getExtras();    //得到传过来的bundle

String data = bundle.getString("Data");//读出数据

setTitle(data);

}

}

布局文件:

main.xml

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/hello"

/>

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/button"

android:id = "@+id/button1"

/>

target.xml

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/target"

/>

String.xml

Hello World, TestBundle!

测试Bundle用法

点击跳转

来到target activity

结果:

跳转结果:

java bundle类_Bundle类的作用相关推荐

  1. java什么是适配器类?作用是什么?_软件设计模式之适配器模式(JAVA)

    什么是适配器模式? 在计算机编程中,适配器模式(有时候也称包装样式或者包装)将一个类的接口适配成用户所期待的.适配器能将因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存 ...

  2. java中math类的作用_Java开发知识之Java的数字处理类Math类

    Java开发知识之Java的数字处理类Math类 一丶Java.text.DecimalFormat类与NumberFormat类 首先 Java.text.DecimalFormat指的是Decim ...

  3. Date类(java.util)和SimpleDateFormat类(java.text)

    在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Date 类.这个类最主要的作用就是获取当前时间,我们来看下 Date 类的使用: 使用 Date 类的默 ...

  4. Java双刃剑之Unsafe类详解

    前一段时间在研究juc源码的时候,发现在很多工具类中都调用了一个Unsafe类中的方法,出于好奇就想要研究一下这个类到底有什么作用,于是先查阅了一些资料,一查不要紧,很多资料中对Unsafe的态度都是 ...

  5. Java中常用的类及其特点

    Java中的内部类有四种(内部类作用1.封装装类型. 2.直接访问外部类成员. 3.回调.)内部类,方便他们的外部类调用,一般不会被其它类使用,比如事件监听器之类的,外部类刚好继承了一个别的类,如果你 ...

  6. Java常用实体类--System类

    字符串.日期.数字是Java程序中最常使用的数据对象,对这些数据的创建.修改.格式化和转换等操作融入在Java程序的每个角落,必须熟练掌握.本节将通过实例演示以下常用实体类 Java系统级类:系统类S ...

  7. JAVA(四)类集/枚举

    成鹏致远 | lcw.cnblog.com |2014-02-04 JAVA类集 1.认识类集 类集的作用 类集实际上就是一个动态的对象数组,与一般的对象数组不同,类集中的对象内容可以任意扩充 类集的 ...

  8. 还在对java类、类的加载一知半解?这篇文章相信会解决你80%的困惑

    目录 什么是Class类 Class类的常用方法 获取Class类的实例 哪些类型可以有Class对象? 类加载内存分析 类加载的过程 类的加载与ClassLoader的理解 什么时候会发生类初始化? ...

  9. java中所有的类都继承于_Java中所有的类都是通过直接或间接地继承( )类得到的...

    Java中所有的类都是通过直接或间接地继承( )类得到的 答:java.lang.Object 关于主机地址 192.168.19.125 (子网掩码: 255.255.255.248 ),以下说法正 ...

最新文章

  1. COJ 0995 WZJ的数据结构(负五)区间操作
  2. SharePoint KB
  3. Python中@staticmethod和@classmethod的作用和区别
  4. 装好了ubuntu,w2k却无法启动了,:(
  5. 唯一的hashCodes不足以避免冲突
  6. VS2010中的路径设置
  7. C++输入一个整数后接着输入字符串
  8. c++ 字符串相等比较
  9. JSK-23 计数和数数【数列】
  10. 小程序获取用户信息 php发送数据库,qq小程序如何获取用户信息并存入数据库实例...
  11. 基于cocos creator 3.4 实现虚拟摇杆
  12. JavaMail概述
  13. excel拆分单元格内容_Excel办公软件教程
  14. 【RDMA】使用‘无信号完成’(Working with Unsignaled completions)|IBV_SEND_SIGNALED
  15. 除了汽车,自动驾驶还将颠覆这33个行业……
  16. MySOL(狂殴26K字只为博君一赞)
  17. 如何通俗解释Docker是什么?
  18. 3*4的方格,有多少个长方形?
  19. macBook下将m4a转换成mp3
  20. python:假设一年期定期利率为3.25%,计算一下需要过多少年,一万元的一年定期存款连本带息能翻番?

热门文章

  1. mysql考试ocm_OCM考试中的物化视图的实现
  2. matlab 四舍五入 保留至指定小数
  3. Java音乐播放器,窗体程序 完整源码
  4. Python 执行MySQL 脚本
  5. python中相关系数_day-14 回归中的相关系数和决定系数概念及Python实现
  6. 合格CTO需要具备的素质能力有哪些?
  7. phpMyAdmin最新版安装与配置
  8. mysql中insert into含义_MySQL中insert into语句的用法
  9. docker出现ip冲突现象
  10. matlab GUI课程设计——简易计算器2