我在Android应用中使用改造。我无法弄清楚如何处理下面格式的JSON。如果数据存在于数组中,Retrofit会自动将数据放入ArrayList中,如果出现这种情况,如何将其放入ArrayList?
目前还不知道有多少JSON对象(由数字标识)。
我需要的是一个ArrayList(或任何其他数据集)hold和object,它只包含“value”中的内容,即 id,value,title 。
P.S。我知道JSON中的数据是多余的,但是,我无法访问API,而且我必须使用我现在拥有的内容。
{
"0":{
"id":0,
"value":{
"id":2,
"value":"Vehicle Battery Connection Removed",
"title":"Vehicle Battery Connection Removed"
},
"title":{
"id":2,
"value":"Vehicle Battery Connection Removed",
"title":"Vehicle Battery Connection Removed"
}
},
"1":{
"id":1,
"value":{
"id":4,
"value":"SOS",
"title":"SOS"
},
"title":{
"id":4,
"value":"SOS",
"title":"SOS"
}
},
"2":{
"id":2,
"value":{
"id":8,
"value":"GPS Signal not valid",
"title":"GPS Signal not valid"
},
"title":{
"id":8,
"value":"GPS Signal not valid",
"title":"GPS Signal not valid"
}
},
"status":1
}
这是用于保存数据的POJO(id,title,value):
public class CustomEventByProtocol
{
public int id;
public String title, value;
@Override
public String toString() { return value; }
}
以下是请求:
@GET("/get_events_by_protocol")
void getEventsByProtocolForDropdown(@Query("user_api_hash") String user_api_hash, @Query("lang") String lang, @Query("type") int type, @Query("protocol") String protocol, Callback<CustomEventsByProtocol> cb);
class CustomEventsByProtocol
{
public ArrayList<CustomEventByProtocol> list;
// HOW TO POPULATE THiS LIST?
}