---------------------
作者:SJRDDS
来源:CSDN
原文:https://blog.csdn.net/yiranruyuan/article/details/78049219
版权声明:本文为博主原创文章,转载请附上博文链接!
Bundle主要用于传递数据;它保存的数据,是以key-value(键值对)的形式存在的。
Bundle经常使用在Activity之间或者线程间传递数据,传递的数据可以是boolean、byte、int、long、float、double、string等基本类型或它们对应的数组,也可以是对象或对象数组。
当Bundle传递的是对象或对象数组时,必须实现Serializable 或Parcelable接口。
Bundle提供了各种常用类型的putXxx()/getXxx()方法,用于读写基本类型的数据。(各种方法可以查看API)
在activity间传递信息
Bundle bundle = new Bundle();  //得到bundle对象  bundle.putString("sff", "value值");  //key-"sff",通过key得到value-"value值"(String型)  bundle.putInt("iff", 175);  //key-"iff",value-175  intent.putExtras(bundle); //通过intent将bundle传到另个Activity   startActivity(intent);

  读取数据

Bundle bundle = this.getIntent().getExtras(); //读取intent的数据给bundle对象
String str1 = bundle.getString("sff"); //通过key得到value     int int1 = bundle.getInt("iff"); 

线程间传递

通过Handler将带有dundle数据的message放入消息队列,其他线程就可以从队列中得到数据

 1 Message message=new Message();//new一个Message对象
 2
 3 message.what = MESSAGE_WHAT_2;//给消息做标记
 4
 5 Bundle bundle = new Bundle(); //得到Bundle对象
 6
 7 bundle.putString("text1","消息传递参数的例子!");  //往Bundle中存放数据
 8
 9 bundle.putInt("text2",44);  //往Bundle中put数据
10
11 message.setData(bundle);//mes利用Bundle传递数据
12
13 mHandler.sendMessage(message);//Handler将消息放入消息队列 

 读取数据

这里用的是Handler的handleMessage(Message msg)方法处理数据

1 String str1=msg.getData().getString("text1"); 2 3 int int1=msg.getData().getString("text2");

转载于:https://www.cnblogs.com/KeepDoingSomething/p/9962087.html

android中bundle的使用相关推荐

  1. Android中Bundle和Intent的区别

    Bundle的作用,以及和Intent的区别: 一.Bundle: A mapping from String values to various Parcelable types 键值对的集合 类继 ...

  2. Android中Bundle的用法

    Bundle经常与Intent一起用,在两个Activity间传递数据.个人目前的理解就是,如果Intent传递的数据只有一个,那么就直接用Intent的putExtra()方法直接放进参数即可.那如 ...

  3. Android中Bundle支持的数据类型

    Bundle支持的数据类型 Android官方给bundle的定义是:A mapping from String keys to various Parcelable values. 传递三个信息,一 ...

  4. Android中Bundle

    Bundle主要用于传递数据:它保存的数据,是以key-value(键值对)的形式存在的. Bundle经常使用在Activity之间或者线程间传递数据,传递的数据可以是boolean.byte.in ...

  5. Android中的状态保存-SharedPreferences和Bundle(文末小彩蛋)

    SharedPreferences 是使用键值对的方式来存储数据的.也就是说当保存一条数据的时候,需要给这条数据提供一个对应的键,这样在读取数据的时候就可以通过这个键把相应的值取出来.而且Shared ...

  6. Android中实现为TextView添加多个可点击的文本

    这篇文章主要介绍了Android中实现为TextView添加多个可点击的文本,可实现类似Android社交软件显示点赞用户并通过用户名称进入该用户主页的功能,是非常实用的技巧,需要的朋友可以参考下.具 ...

  7. Android中Broadcast

    前一段时间,听说过android的广播,这段时间经过研究终于可以写出一个Demo 首先新建一个android工程项目 在BroadCastActivity.java中 package com.mypa ...

  8. NEON在Android中的使用举例

    1.  打开Eclipse,File-->New-->AndroidApplication Project-->Application Name:Hello-Neon, Projec ...

  9. 利用JNI技术在Android中调用C++形式的OpenGL ES 2.0函数

    1.                 打开Eclipse,File-->New-->Project--->Android-->AndroidApplication Projec ...

  10. 利用JNI技术在Android中调用C++代码

    JNI是Java Native Interface的简称,也就是Java本地接口,它提供了若干的API实现Java和其它语言的通信(主要是C&C++). 1.打开Eclipse,File--& ...

最新文章

  1. 整数中内存中的保存方式:大端、小端
  2. LiveData + ViewModel + Room (Google 官文)+Demo
  3. Oracle通过SSL方式连接AD服务器
  4. python的工作方向-python的工作方向有哪些
  5. 数据中心供电有多重要,看看这件事就知道了
  6. 【学习笔记】10、循环语句—for
  7. 原:开辟内存时,可以以结构体为单位,这样测试,是对的吧?
  8. Linux shell去除字符串中所有空格
  9. 企业QQ 增加在线交谈链接
  10. Ninject学习笔记三
  11. Centos系统服务FAQ汇总(下)
  12. 解决windows下的mysql匿名登陆无法使用mysql数据库的问题
  13. 中国人工智能学会通讯——一种基于众包的交互式数据修复方法 3 给定质量约束下的交互式算法...
  14. Cnskype移动办公现状分析管理
  15. 从概念入手,了解AWS在Iaas、Paas,Saas层的服务
  16. ble协议栈从零开始七(linklayer 之 privacy)
  17. 一种简单易用的台球瞄准方法——对称瞄准法
  18. Android Navigation与BottomNavigationView实现底部导航栏
  19. 《走进医学》 答案 +期末考试答案 2021年【完整/完结】
  20. 微擎mysql和redis_微擎如何开启redis,redis开启方法详解

热门文章

  1. 时域上的乘积等于频域上的卷积_图卷积神经网络:Graph Convolutional Networks
  2. 删除Linux上的用户
  3. 分享一些 Windows 平台上的神器
  4. go lang go get There is no tracking information for the current branch.Please specify which
  5. java 多线程单例模式
  6. 【收藏】基于Dockerfile搭建JAVA Tomcat运行环境
  7. AIO 理论 与 编程
  8. 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_22-CMS前端页面查询开发-Api调用-跨域解决...
  9. Laravel5.x 封装的上传图片类
  10. [蓝桥杯]PREV-12.历届试题_危险系数