2011-09-26 88 views
1

我有一個listActivity。在列表的每一行中都放置了一個類別的名稱。在ListView中設置圖像

我從網上下載活動,所以他們可能會偶爾改變。但我想爲每個類別設置一個圖像。

我有一個可能發生的類別列表。我有所有類別的圖形。我如何才能順利地將正確的圖像與相應的類別進行匹配?

編輯:

我有圖片。現在如何將它們添加到listView。但我尋求建議如何將正確的類別映射到正確的圖片。如果我將圖片命名爲與類別相同的名稱,位圖工廠是否可以做到這一點。

Bitmap bMap = BitmapFactory.decodeFile("/categoryicon_"+c.getId() + ".png"); 
           imageView.setImageBitmap(bMap); 

回答

0

解決這樣的:

String icon = "category_"+c.getId(); 
           int resId = getResources().getIdentifier(icon, "drawable", getPackageName()); 
           Bitmap bMap = BitmapFactory.decodeResource(getResources(), resId); 
           imageView.setImageBitmap(bMap) 
0

我會嘗試使用類別名稱作爲鍵和映像的資源ID作爲值的映射。然後你可以使用正確的id從資源中加載drawable。

+0

可以工作。但它不具有可擴展性。可以說我有100個類別...我正在尋找位圖,你怎麼看? – johan

0

爲了顯示活動,我會使用一個自定義數組適配器,這裏有很多不同的例子,所以如果你只是谷歌,你會發現加載。首先,List14就是一個很好的例子。 然後你有一系列的活動,每個活動都有一個id,它決定了將顯示什麼樣的圖像,當然還有活動的名稱。然後取決於活動的哪個ID顯示正確的圖像。

如果您想偶爾使用主頁刷新來更改它,您應該下載圖像並以良好的方式存儲它們,如果圖像隨着活動而變化。