2013-10-19 19 views
0

我有類配方的列表:ListAdapter - SimpleAdapter白衣一類是如何讓

List<Recipe> recipeList = new ArrayList<Recipe>(); 

和類絲毫屬性基礎知識:

public class Recipe { 
     public int id; 
     public String name; 
     public String time; 
... 

林試圖把這個SimpleAdapter而Android工作室acuses錯誤當我這樣做:

ListAdapter listAdapter = new SimpleAdapter(
ResultActivity.this, 
recipeList,R.layout.list_item, 
new String[] {"id","name","time"}, 
new int[] { R.id.id,R.id.name,R.id.time } 
        ); 

我看到一些例子轉換這在地圖中,但有多麼使直接惠特級如何參數,多謝這節省我的一天。

回答

1

創建數據映射是這樣的:

ArrayList<Map<String, String>> mapData = 
     new ArrayList<Map<String, String>>(); 

    for (Recipe recipe : recipeList) { 

     HashMap<String, String> map = new HashMap<String, String>(); 

     map.put("id", String.valueOf(recipe.id)); 
     map.put("name", recipe.name); 
     map.put("time", recipe.time); 

     mapData.add(map); 

    } 

,這應該工作:

ListAdapter listAdapter = new SimpleAdapter(ResultActivity.this, mapData, 
     R.layout.list_item, new String[] { "id", "name", "time" }, 
     new int[] { R.id.id, R.id.name, R.id.time }); 
+0

謝謝,完美的作品。 – overallduka