2016-04-05 19 views
2

我有JSON,我開始使用改裝從改造查詢獲取地圖

[{ 
    "id":"1", 
    "name":"name", 
    "fields_json":{ 
    "f1":"value1", 
    "f2":"value2", 
    "f3":"value3" 
    } 
},{ 
    "id":"2", 
    "name":"name2", 
    "fields_json":{ 
    "f1":"value1", 
    "f2":"value2", 
    "f3":"value3" 
    } 
}] 

我想要得到的人的名單(長ID,字符串名稱,地圖領域)

我怎麼可能會fields_json如地圖在這個班上?

回答

0

它不能作爲地圖對象添加。 相反,您需要創建另一個包含f1-f3變量的java類。 然後將這個新類作爲一個名字爲fields_json的變量添加到當前類中。

+1

但F1,F2,F3 - 動態ķ餘仁生 – Tim

1

如果你改變你的JSON一點,這樣你就可以使用特殊的響應班 { 「人」:[{ID 「:」 1" , 「名」: 「名字」,...}]}

public class Response { 

    @SerializedName("persons") 
    @Expose 
    public ArrayList<Person> persones; 
} 

public class Person { 

    @SerializedName("id") 
    @Expose 
    public String id; 
    @SerializedName("name") 
    @Expose 
    public String name; 
    @SerializedName("fields_json") 
    @Expose 
    public FieldsJson fieldsJson; 

} 

public class FieldsJson { 

    @SerializedName("f1") 
    @Expose 
    public String f1; 
    @SerializedName("f2") 
    @Expose 
    public String f2; 
    @SerializedName("f3") 
    @Expose 
    public String f3; 
} 

,並設置這個類作爲響應

@POST("/url") 
Call<Response> getPersones(
     .... 
); 

所以,如果你願意,你可以形容公共fieldsJson作爲地圖

Map<String, Object> fieldsJson