在問這裏之前,我首先搜索如何將arraylist從意圖傳遞到另一個意圖。由於在SO上發佈的一篇文章,我想我找到了一個方法來做到這一點。問題將arraylist從意圖傳遞到另一個
事情是,當我嘗試顯示我的目標活動的數組列表中的元素時,我只獲得了我原來在離開活動中擁有的衆多元素之一。
爲了把它清楚,這是我在我的最前一頁活動代碼:
HashMap map = new HashMap<String,String>();
map.put("key1","value1");
map.put("key2","value2");
arrayList.add(map);
Log.d("arrayList", String.valueOf(arrayList));
在logcat的,我有預期的元素:
D/arrayList:: [{"key1":"value1"},{"key2","value2"}
然後,我追求這個:
Intent intent = new Intent(MyFirstActivity.this,MySecondActivity.class);
intent.putExtra("arrayList",arrayList);
現在,這是我的第二個活動,應該是收到的元素。
Intent intent = getIntent();
arrayList = (ArrayList<HashMap<String,String>>) getIntent().getSerializableExtra("arrayList");
Log.d("arraySecondActivity", String.valueOf(arrayList));
在logcat的,只是我的第二個項目是顯示:
D/arraySecondActivity: [{key2=value2}]
,我不知道爲什麼...沒有人也許知道嗎?
謝謝!
確保您的物品已添加到您的數據列表,然後您通過意圖傳遞 –
如何?我的意思是,第一個項目沒有問題,我的第二個項目怎麼樣? – Navy07