我試圖在活動之間通過一個ArrayList<HashMap<String, String>>
。我如何與Intents做到這一點?如何在活動之間傳遞ArrayList <HashMap <String,String >>?
回答
ArrayList是可序列化的(以及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);
對不起,我沒有理解。你的意思是putExtra(「list」,(Serializable)myList)? – 2013-03-07 00:15:00
是的,如果你使用'List
嗯,我做了上述,我無法在我的其他活動中獲取數據。我這樣做:Intent intent = getIntent(); \t \t Bundle bundle = intent.getExtras(); \t \t ArrayList
使用putExtra(String, Serializable)
通過在Intent
和getSerializableExtra(String)
方法的值來檢索數據。
傳遞從活動A一個ArrayList>到活動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);
- 1. 如何聲明HashMap <String,ArrayList <ArrayList <String> >>?
- 2. 在AsyncTask中傳遞ArrayList <HashMap <String,String >>
- 3. Android ArrayList <HashMap <String,String >>
- 4. 傳遞ArrayList <HashMap <String,String >>到一個片段
- 5. 構造函數ArrayAdapter <ArrayList <HashMap <String,String >>>(Context,int,ArrayList <HashMap <String,String >>)未定義
- 6. 將ArrayList <HashMap <String,String >>附加到另一個ArrayList <HashMap <String,String >>
- 7. Javapoet - TypeName - HashMap <String,HashMap <String,List <String> >> generation?
- 8. 從ArrayList中獲取元素<HashMap <String,HashMap <String,String >>>
- 9. 如何從意圖傳遞HashMap <String,List <String>>
- 10. 如何在活動之間傳遞ArrayList <ArrayList <customtype>>
- 11. 如何在SharedPreferences中存儲ArrayList <HashMap <String,String >>?
- 12. 如何在AlertDialog中設置ArrayList <HashMap <String,String >>?
- 13. 如何在SharedPreferences中存儲ArrayList <HashMap <String,String >>?
- 14. 如何正確聯合HashMap <String,ArrayList <Object>>和HashMap <String,Object>
- 15. Map <String,Map <String,Boolean >> myMap = new HashMap <String,HashMap <String,Boolean >>();
- 16. HashMap <String,ArrayList <Objects>>
- 17. set ArrayList <HashMap <String,Object>> value
- 18. 如何從ArrayList中獲取對象<HashMap <String,String >>
- 19. Android:如何訂購ArrayList <HashMap <String,String >>?
- 20. 如何迭代Arraylist <HashMap <String,String >>?
- 21. 加載數據到HashMap <String,HashMap <String,HashMap <String,ArrayList <ClassOb> >>>
- 22. 在活動恢復中保存並恢復ArrayList <HashMap <String,String >>
- 23. java:在ArrayList中存儲HashMap <String,String><Object>
- 24. 在ArrayAdapter中設置ArrayList <HashMap <String,String >>
- 25. 使用HashMap(String,ArrayList <String>)
- 26. 轉換ArrayList <ArrayList <String>>「返回」ArrayList <String>
- 27. 從ArrayList中刪除重複項<HashMap <String,String >>
- 28. 獲取ArrayList <HashMap <String,String >>的值用於顯示
- 29. Group ArrayList <HashMap <String,String >>按某個鍵
- 30. 從ArrayList得到無效值<HashMap <String,String >>
數據由於所有這些的實現'Serianlizable',我想你可以通過'Intent.putExtra()'。 ([Source](http://developer.android.com/reference/android/content/Intent.html#putExtra%28java.lang.String,%20java.io.Serializable%29)) – 2013-03-07 00:16:53