2012-03-25 44 views
0

我在哪裏,我從XML提要加載數據,並與不同的活動創造各種選項卡我的主類中定義一個ArrayList如何僅顯示哈希表的Arraylist中的某些條目(例如收藏夾)?在這裏我把地圖進入包含HashMap的ArrayList中的</p> <pre><code>static ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>(); </code></pre> <p>例:

for (int i = 0; i < 10; i++) {  
    HashMap<String, String> map = new HashMap<String, String>(); 
    Element e = (Element)nodes.item(i); 
    map.put("id", XMLfunctions.getValue(e, "id")); 
    map.put("lat", "Lat: " + XMLfunctions.getValue(e, "lat")); 
    map.put("long", "Long: " + XMLfunctions.getValue(e, "long")); 
    map.put("favourite", [lookup of true/false favourite status and insert here]); 
    mylist.add(map); 
} 

第一個標籤是一個ListViewActivity,我能夠成功通過引用的ArrayList中的主類創建列表:通過列表適配器class.mylist:

ListAdapter adapter = new SimpleAdapter(
         ListViewActivity.this, 
         main.mylist, R.layout.list, 
         new String[] { "id", "lat", "long" }, 
         new int[] { R.id.item_id, R.id.item_lat, R.id.item_long });     
setListAdapter(adapter); 

我在哪裏卡住如下...

我有另一個選項卡「收藏夾」凡在我FavouriteActivity我想在「MYLIST」,只顯示那些條目的列表視圖用於其「收藏」狀態是真的。

換言之,根據列表中每個條目的特定條件顯示mylist的子集。

這可能嗎?我試過克隆,迭代和誰知道什麼,但我一直無法弄清楚......任何建議(有一些小例子)將非常感激!

謝謝!在你ArrayList

迭代,每個HashMap對象疊代其keys像這樣在Map匹配最喜愛的作品:

回答

0

如果我明白你的問題正確,你可以做到這一點

for (Map map : myList) { 
    for (String key : map.keySet()) { 
     If("favourite".equals(key)) { 
          // ... 
      } 
    } 
} 
相關問題