2011-08-08 95 views
0

我試圖使用本教程在我的項目,以顯示與JSON數組列表視圖:如何創建json模型類?

https://bobbyprabowo.wordpress.com/2010/11/25/android-json-processing-using-gson-and-display-in-on-a-listview/

這裏是一個LocationModel.java和LocationList.java。

這是我的JSON:

{ 
    "data":{ 
     "totalQuests":"11", 
     "active":[ 
     { 
      "id":"1", 
      "name":"TITLENAME", 
      "description":"text", 
      "text_when_complete":"" 
     }, 
     { 
      "id":"2", 
      "name":"TITELNAME2", 
      "description":"Text2", 
      "text_when_complete":"" 
     } 
     ], 
     "completed":[ 
     { 
      "id":"3", 
      "name":"TITLENAMECOMP", 
      "description":"textCOMP", 
      "text_when_complete":"" 
     } 
     ] 
    }, 
    "returnCode":0, 
    "returnCodeDescription":null 
} 

我有問題,這個JSON字符串寫入LocationModel。

我如何從「活動」和「完成」獲取元素?

感謝您的幫助。

編輯:

感謝好advie MByD;) 不幸的是我仍然不知道如何使用它。

在這段代碼中,我從json中得到一個「Data」元素。

我在數據對象中:{「data」:{。 接下來我想從「主動」中獲取元素... 我應該如何使用您的建議?接下來是什麼?這是對的嗎?

private List<LocationModel> data; 
public List<LocationModel> getQuests() { 

    return data; 
} 
public void setLocationList(List<LocationModel> data) { 
    this.data = data; 
} 

回答

4

的類結構應該是(根據您的JSON字符串的結構),你應該添加getter和setter方法,因爲我沒有包括他們是這樣的:

class MyClass { 
    Data data; 
    Integer returnCode; 
    Integer returnCodeDescription; 
} 

class Data { 
    String totalRequests; 
    Status[] active; 
    Status[] completed; 
} 

class Status { 
    String id; 
    String name; 
    String description; 
    String textWhenCompleted; 
} 

解析它:

MyClass class = new Gson().fromJson(yourJsonString, MyClass.class);