我想在活动之间发送带有hashmap的arraylist,但给我的是带有hashmap的空arraylist。
发件人活动
ArrayList<HashMap<String,String>> childgame = new ArrayList<HashMap<String,String>>();
Intent ordernow= new Intent(CategoryActivity.this,OrderDetailActivity.class);
ordernow.putExtra("orderlist",childgame);
startActivity(ordernow);
接收者活动
Intent intent = getIntent();
Bundle bundle =intent.getExtras();
bundle.getSerializable("orderlist");
发布于 2013-07-13 18:56:57
使用putExtra(String, Serializable)
传递Intent中的值,使用getSerializableExtra(String)
方法检索数据。
ArrayList实现了Serializable
http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html
你已经有这个了
ordernow.putExtra("orderlist",childgame);
获取列表
Intent intent = getIntent();
ArrayList<HashMap<String,String>> list = (ArrayList<HashMap<String, String>>) intent.getSerializableExtra("orderList");
public Serializable getSerializableExtra (String name)
在API级别1中添加
从意图中检索扩展数据。
参数
命名所需项目的名称。
返回
以前使用putExtra()添加的项的值;如果找不到可序列化的值,则返回null。
发布于 2013-07-13 18:48:47
尝试使用getIntent().getSerializableExtra("orderlist")
接收方使用:与接收数据的ArrayList类型相同!
ArrayList<HashMap<String, String>> arl = (ArrayList<HashMap<String, String>>) getIntent().getSerializableExtra("orderlist");
https://stackoverflow.com/questions/17629379
复制相似问题