`

android传递数据bundle封装传递map对象

 
阅读更多

 

转于:http://my.oschina.net/baishi/blog/182931

 

-------------------------------------------------------------------------------------------

 

android开发默认情况下,通过Bundle bundle=new Bundle();传递值是不能直接传递map对象的,解决办法:

 

第一步:封装自己的map,实现序列化即可

 

 

 

01 /**
02  * 序列化map供Bundle传递map使用
03  * Created  on 13-12-9.
04  */
05 public class SerializableMap implements Serializable {
06  
07     private Map<String,Object> map;
08  
09     public Map<String, Object> getMap() {
10         return map;
11     }
12  
13     public void setMap(Map<String, Object> map) {
14         this.map = map;
15     }
16 }

 

第二步:传递数据:

 

 

 

1 Intent intent=new Intent(ListViewActivity.this,UpdateWatchActivity.class);
2                                 //传递数据
3                                 final SerializableMap myMap=new SerializableMap();
4                                 myMap.setMap(map);//将map数据添加到封装的myMap<span></span>中
5                                 Bundle bundle=new Bundle();
6                                 bundle.putSerializable("map", myMap);
7                                 intent.putExtras(bundle);

 

第三步:接收数据:

 

 

 

1 Bundle bundle = getIntent().getExtras();
2         SerializableMap serializableMap = (SerializableMap) bundle.get("map");

 

 

 

 

到此数据就能在通过map传递和使用了。

分享到:
评论

相关推荐

    Android 通过Intent使用Bundle传递对象详细介绍

    Android 通过Intent使用Bundle传递对象 Android开发中有时需要在应用中或进程间传递对象,下面详细介绍Intent使用Bundle传递对象的方法。 被传递的对象需要先实现序列化,而序列化对象有两种方式:java.io....

    Android-Android界面跳转传递参数封装

    `Android-Android界面跳转传递参数封装`这个主题主要关注如何通过编程的方式优化这一过程,提高代码的可读性和可维护性。通常,开发者会使用Intent来实现Activity之间的通信,包括启动新的Activity和传递数据。下面...

    Fragment与Activity使用Bundle传递数据

    1. **创建Bundle对象**:在发送数据的一方(通常是Activity),我们需要创建一个Bundle对象,然后将要传递的数据放入其中。例如,如果我们想传递一个字符串和一个整数,可以这样操作: ```java Bundle bundle = new...

    android 传递对象

    Android提供了多种方式来传递对象,包括Intent、Bundle、Parcelable、Serializable等。下面将详细讲解这些方法及其适用场景。 首先,Intent是Android系统用来启动Activity或Service的主要手段,同时也支持传递数据...

    Android 数据传递(Intent、Bundle、Serializable、Parcelable等)

    在Android中,Serializable常用于Intent和Bundle的数据传递。序列化的过程是将对象转换为字节流,反序列化则相反。虽然使用简单,但序列化速度较慢,且生成的字节流占用空间大,不适合大量数据传输。 4. **...

    安卓Android源码——Bundle.rar

    由于Android不支持对象的直接传递,Bundle提供了将数据序列化的方式,使得复杂的数据结构能够在不同组件之间安全地传输。 1. **数据存储**:Bundle支持多种数据类型,如基本类型(int, String, boolean等),数组,...

    andorid 利用Intent 传递Bundle包

    在Android应用开发中,Intent是一种强大的机制,用于在组件之间传递数据和启动操作。Intent不仅可以用来启动新的Activity,还能启动Service、BroadcastReceiver等。在这个场景中,我们将关注Intent如何与Bundle结合...

    Android_Bundle介绍

    Android_Bundle 介绍 ...Bundle 是 Android 中的一种灵活的数据存储方式,能够帮助开发者轻松地在不同的 Activity 之间传递数据。但是,需要注意它的使用场景和限制,选择合适的存储方式来存储和传递数据。

    Android用Bundle传递数据并返回结果

    当我们需要传递复杂的数据时,可以将数据封装到`Bundle`中,然后通过Intent将`Bundle`传递给目标Activity。 以下是使用`StartActivityForResult`和`Bundle`传递数据的基本步骤: 1. **创建Intent**:在源Activity...

    Android-Activity之间数据传递的多种方式

    - putExtra(String name, Bundle bundle):可以将一个Bundle对象放入Intent,进一步封装复杂的数据结构。 二、Bundle传递数据 Bundle是Android中的一个容器类,可以存储键值对,它通常与Intent结合使用。当Intent...

    Android中传递对象

    我们知道在Android 系统中,可以用Bundle或Intent来保存和传递数据。我们有时由于程序某种需要,可能需要传递各种各样的自定义对象,只传递简单类型的数据是不够的。但这些对象在Activity之间不能直接传递,用什么...

    Android aidl实现传递对象

    本文将深入探讨如何利用AIDL在Android应用间传递对象。 首先,我们需要理解AIDL的基本概念。AIDL文件是一种定义接口的文本文件,它以.aidl为扩展名,包含了方法签名和数据类型声明。这些定义会被Android编译器转换...

    Bundle传递数据方式

    在Android开发中,Bundle是一个非常重要的工具类,用于在组件之间传递数据。它通常被用于Activity、Fragment或者Intent之间的数据交换。本篇文章将详细讲解Bundle的两种主要数据传递方式:传递简单数据和传递自定义...

    android bundle message

    在Android开发中,Bundle对象是传递数据的一种常见方式,它被广泛用于Activity、Fragment或Service之间的数据通信。标题“android bundle message”暗示我们将探讨如何在Android应用中使用Bundle来传递消息和数据。...

    Android中Bundle的小例子

    在Android应用开发中,`Bundle`是一个至关重要的组件,它被广泛用于在不同的组件之间(如Activity、Fragment或Service)传递数据。`Bundle`本质上是一个键值对存储容器,可以容纳各种基本数据类型以及Parcelable和...

    Android通过Intent传递数据

    "Android通过Intent传递数据"这一主题,涵盖了Intent的基本使用和数据传递的方式。 Intent分为显式Intent和隐式Intent。显式Intent明确指定要启动的目标组件,而隐式Intent则不指定具体接收者,而是根据Intent的...

    android bundle和activity之间交换数据

    Bundle对象是Android系统用于存储和传递数据的一种容器,而Activity则是应用程序的基本组件,负责显示用户界面并处理用户交互。理解如何有效地在两者之间传递数据是提升Android开发技能的关键。 ### 1. Bundle对象...

    Android学习笔记之bundle用法源码

    总结来说,Bundle是Android中传递数据的关键工具,它的使用涵盖了基本类型、Parcelable和Serializable对象。理解其工作原理和源码实现,有助于开发者更高效地在组件间传递数据,同时避免潜在的性能问题。通过深入...

    bundle传递基本数据,Parcelable类型数据,Serializable类型数据

    在Android应用开发中,`Bundle` 是一个非常重要的工具类,它主要用于在不同组件之间(如Activity、Fragment、Intent)传递数据。`Bundle` 实现了`Parcelable`接口,这使得它可以高效地存储和恢复数据。本篇将详细...

Global site tag (gtag.js) - Google Analytics