Android中如何在两界面间传递下面的集合?

List<Map<String,Object>>listData=newArrayList<Map<String,Object>>();传递后如何接收?... List<Map<String, Object>> listData = new ArrayList<Map<String, Object>>();
传递后如何接收?
展开
 我来答
beginjzd
2012-07-06 · TA获得超过351个赞
知道答主
回答量:63
采纳率:100%
帮助的人:40.6万
展开全部
intent啊 intent是android的运输大队长

Intent newIntent = new Intent();
newIntent.setClass(this, another.class);
List<Map<String, Object>> listData = new ArrayList<Map<String, Object>>();

Bundle bundle = new Bundle();
bundle.putSerializable(”data“, listData );
newIntent.putExtras(bundle);
startActivityForResult(newIntent, 0);

在another类中的oncreate()方法取
List<Map<String, Object>> listData = new ArrayList<Map<String, Object>>();

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
List<Map<String, Object>> listData= (List) bundle.getSerializable(”data“);
}
大概是这个样子,祝你顺利
追问
能够传递,但根据Key取Map里面的值时报错了!

java.lang.ClassCastException: java.util.ArrayList

请问是怎么回事?
追答
你传的是一个list,而list中存放的是map,现在的代码 中list是空的。当你把list中添加map时,应该循环list中的值,通过循环的得到值再去取map中的值。
我找不到你叻
2012-07-06 · TA获得超过152个赞
知道答主
回答量:44
采纳率:0%
帮助的人:29.9万
展开全部
建议在处理Activity中开线程处理

然后使用使用Handler来传递给下一个线程,

在子线程里发送一个Message 给Handler

用message.obj来传递listData
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jayseagulls
2012-07-06
知道答主
回答量:10
采纳率:0%
帮助的人:4.2万
展开全部
不知道啊 为了钥匙 我来了···
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9852129
2013-03-05
知道答主
回答量:26
采纳率:0%
帮助的人:11.7万
展开全部
Object 你序列化了吗 对象必须序列化才可以传递
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式