两个activity之间怎么传递ArrayList<HashMap<String, Object>>

问题:两个activity之间怎么传递ArrayList<HashMap<String, Object>>,比如在跳转后的页面要得到构造器数据,可是在跳转后页面构造数据的话可能就会效率太慢导致页面跳转的时候出现黑屏现象,这样的话我们就会想在跳转前页面先得到数据,然后将ArrayList<HashMap<String, Object>>类型的数据传到另一个activity在构造适配器这样就不会出现因初始化页面时间太久而出现的黑屏现象了。但是问题出现了,怎么传递这个数据呢?

解答:应该用bundle存储数据键值对:
                   ArrayList<Map<String,String>>dataList=new ArrayList<Map<String,String>>(); 
                   //添加数据
                   Intent intent=new Intent();
                   intent.setClass(Activity1.this, Activity2.class);               
                   Bundle bundle=new Bundle();
                   bundle.putParcelableArrayList("arrayList", (ArrayList)dataList);
                   intent.putExtras(bundle);
                   startActivity(intent);

另一个activity的接收:

ArrayList<HashMap<String, Object>>        dataList = (ArrayList<HashMap<String, Object>>) getIntent().getSerializableExtra("arrayList");

两个activity之间怎么传递ArrayList<HashMap<String, Object>>

时间: 2025-01-06 18:07:01

两个activity之间怎么传递ArrayList<HashMap<String, Object>>的相关文章

ArrayList&lt;HashMap&lt;String,Object&gt;&gt;集锦

1.   Android中如何从一个Activity中ArrayList<HashMap<String,Object>>传递到另一个activity?      eg:      存:intent.putExtra("arrayList", dataList);     取(记得强制类型转换):     ArrayList<HashMap<String, Object>> dataList = new ArrayList<HashM

Android activity之间数据传递和共享的方式之Application

1.基于消息的通信机制  Intent ---bundle ,extra 数据类型有限,比如遇到不可序列化的数据Bitmap,InputStream,或者LinkedList链表等等数据类型就不太好用. 2.利用static静态数据, public static成员变量: 3.基于外部存储的传输,File/Preference/Sqlite 如果要针对第三方应用需要Content Provider 4.基于IPC的通信机制 context 与Service之间的传输,如Activity与Serv

Android中在两个Activity之间进行数据传递

首先声明,此篇文章是我原先的CSDN上面的博客,由于种种原因,不想再使用csdn博客,于是就将其文章搬至现在的cnblog. 大家好,今天我终于开通了自己的博客,很开心能和大家共同分享我的学习经验,希望我们可以共同进步哦,废话不多说了,看一下我今天学习android遇到的一些问题和解决办法吧 首先先把我使用的eclipse的版本贴出来:adt-bundle-windows-x86-20130917 这是一个集成的版本,不需要配置SDK和ADT,但是需要手动配置JDK哦! 其实,不同版本的ecli

Android中activity之间如何传递Hashmap数据

我的使用场景是当一个页面需页面中的listview中的hashmap的数据时要另一个,就要用到了传递hashmap数据. 在发送方,我的代码是这样的: package cn.oddcloud.www.coffeestore.Test; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View;

解析activity之间数据传递方法的详解

转自:http://www.jb51.net/article/37227.htm 本篇文章是对activity之间数据传递的方法进行了详细的分析介绍,需要的朋友参考下 1  基于消息的通信机制 Intent--------boudle,extra用这种简单的形式,一般而言传递一些简单的类型是比较容易的,如int.string等详细介绍下Intent机制Intent包含两部分:1 目的[action]-------要去到哪里去2 内容[category.data]----------路上带些什么,

两个Activity之间共享数据、互相访问的另一种方式的实现

本帖最后由 勇敢的心_ 于 2010-9-29 11:51 编辑本人从windows编程转过来学习Android开发,一直在想如果两个Activity之间能够像C#或delphi中的Form一样,可以直接访问其成员(字符.数值.成员对象等),并能调用其公开的方法,那应该比用Intent来传递数据直接方便的多,于是偿试了如下办法,测试基本没有问题,发出来大家讨论一下.本人学习android不久,幼稚的地方希望大家不要见笑原理:假设有两个Activity:ActivityMain 和 Activit

Activity之间序列化传递Object

Activity之间可以通过Intent和Bundle跳转并传递数据,可以传递的数据类型包括基本数据类型,String以及实现了Parcelable接口或Serializable接口的Object(File实现了Serializable接口): 1.Serializable接口是java中定义实现的,无须重写任何方法,但序列化和反序列化的过程中会产生大量中间变量,占用较大的内存 2.Parcelable接口,是Google专门为Android序列化定制的,序列化过程需要重写writeToParc

无废话Android之smartimageview使用、android多线程下载、显式意图激活另外一个activity,检查网络是否可用定位到网络的位置、隐式意图激活另外一个activity、隐式意图的配置,自定义隐式意图、在不同activity之间数据传递(5)

1.smartimageview使用 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"

Android Bundle类,通过bundle实现在两个activity之间的通讯

根据google官方的文档(http://developer.android.com/reference/android/os/Bundle.html) Bundle类是一个key-value对,“A mapping from String values to various Parcelable types.” 类继承关系: java.lang.Object     android.os.Bundle Bundle类是一个final类:public final classBundleexten