2012-07-31 48 views
0

我有一個收藏夾按鈕,我希望它可以根據在收藏夾地圖中是否找到ID來更改它的圖像,但它似乎不工作。 這裏是我的代碼:Android:如果地圖包含值,更改按鈕資源不工作

boolean containsShop = false; 
      for (Map<String, String> hashMap : TabsViewPagerFragmentActivity.favouritesData) 
       { 

        containsShop = hashMap.containsValue(shopID); 



       } 

      if(containsShop) { 
       isFavourite = true; 
       favouritesBtn.setBackgroundResource(R.drawable.is_a_favourite); 
      } else { 

       isFavourite = false; 
       favouritesBtn.setBackgroundResource(R.drawable.favourite_normal); 
      } 

這似乎按鈕設置爲R.drawable.favourite_normal即使ID是在地圖上。 我在做什麼錯?

編輯:

對不起,我複製了錯誤的代碼。 - 我只注意到它似乎只按鈕設置爲 R.drawable.is_a_favourite如果對象是最後一個對象添加到favouritesData的ArrayList

回答

0

,並在添加break聲明for loop,如果你找到了值。否則,在循環的下一次迭代中,boolean值可能會被覆蓋。

containsShop= hashMap.containsValue(shopID); 
if (containsShop) break; 
0
containsShop = hashMap.containsValue(shopID); 

替換此

containsVenue = hashMap.containsValue(shopID); 
^^^^^^^^^^^^