1. 程式人生 > >使用gson解析json後怎麼把陣列放到listview中

使用gson解析json後怎麼把陣列放到listview中

json資料是這個:
{"total":100,"rows":[{"key":"key1","value":"value1"},{"key":"key2","value":"value2"}]}


結構是這樣的

public class A {
 public int total;
 public List<B> rows;
}

public class B{
  public string key;
  public string value;
 }

然後我這麼寫

 String json = "{\"total\":100,\"rows\":[{\"key\":\"key1\",\"value\":\"value1\"},{\"key\":\"key2\",\"value\":\"value2\"}]}";  
        Type type = new TypeToken<B>() {}.getType();  
        Gson gson = new Gson();  
        A a = gson.fromJson(json, type);  
        Log.v("total",String.valueOf(a.getTotal()));

現在我已經可以得到total的資料了,然後我想請問,我需要把rows裡面的內容新增到listview裡面該怎麼新增?
我是這麼寫的

for (int i = 1; i<a.getRows().size(); i++){
                    Map<String,String> map = mgson.fromJson(json,type);
                    list.add(map);
                }
                sim = new SimpleAdapter(mContext,list , R.layout.profession_listview,new String[]{"value"} , new int[]{R.id.pf});
                mlv.setAdapter(sim);

我只要新增value的資料到listview上面去,請問現在我該怎麼做?我寫的那個直接崩潰了,提示錯誤是和我的map有關,我也覺的我這麼寫不對,我也不知道該怎麼寫,所以想請問下我要怎麼寫才能讓她顯示在listview裡面?
然後我之後監聽事件獲得點選的item裡面的資料該怎麼寫?
我想的是在onItemClick裡面這麼寫

HashMap<String,String> map = (HashMap<String,String>)mlv.getItemAtPosition(position);
                       String nm = map.get("value");
                       Toast.makeText(getApplicationContext(), nm, Toast.LENGTH_SHORT).show();

請問又該怎麼寫呢?

兩個問題
1)怎麼新增value到listview裡面去?
2)點選事件獲得當前點選的item的資料怎麼獲得?

之前發了個帖子也是關於listview的,問題和這個差不多,不過沒這個清晰,然後到現在沒解決,換了個思路發現還是不行,想問問有沒有大神知道?
沒分了,不過另外那個帖子有分,可以到那個帖子留言我給分,實在感謝各位了。
被這個問題困擾兩天了,昨天也是這個時候發的那篇帖子,網上能查到的都試過了,全部對我沒用,真的希望能解決這個問題,謝謝謝謝!

這個是我那篇帖子的地址:http://bbs.csdn.net/topics/391052596