如何传递ArrayList <hashmap <string,string =“”>&gt;活动之间?</hashmap <string,>

时间:2013-03-07 00:06:59

标签: android android-intent arraylist

我正在尝试在活动之间传递ArrayList<HashMap<String, String>>。我如何用Intents做到这一点?

2 个答案:

答案 0 :(得分:2)

ArrayList是Serializable(以及HashMaps和Strings),所以试试putExtra(String, Serializable)

ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
Intent intent = new Intent(this, MyActivity.class); 
intent.putExtra("key", list);

答案 1 :(得分:0)

使用putExtra(String, Serializable)传递IntentgetSerializableExtra(String)方法中的值来检索数据。

传递ArrayList&gt;从活动A到活动B

Intent intent = new Intent(this, B.class);
HashMap<String, String> hm = new HashMap<String, String>();
hm.put("sunil", "sahoo");
ArrayList<HashMap<String, String>> arl = new ArrayList<HashMap<String, String>>();
arl.add(hm);
intent.putExtra("arraylist", arl);
startActivityForResult(intent, 500);

检索活动B中的数据

ArrayList<HashMap<String, String>> arl = (ArrayList<HashMap<String, String>>) getIntent().getSerializableExtra("arraylist");
System.out.println("...serialized data.."+arl);