我正在为我的Android应用程序使用Retrofit,称之为:
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint(BASE_URL)
.build();
ApiEndpointInterface apiService = restAdapter.create(ApiEndpointInterface.class);
apiService.getFeed(9, new Callback<Post>() {
@Override
public void success(Post post, Response response) {
// loop
}
@Override
public void failure(RetrofitError retrofitError) {
retrofitError.printStackTrace();
}
});
JSON的格式如下:
{
"success":true,
"data":[
{
"id":"1",
"user_id":"2",
"message":"Hello, world!"
},
{
"id":"2",
"user_id":"1",
"message":"Another hello!"
}
]
}
如何遍历每个项目,例如,将其消息打印到控制台?每个项目都属于Post
模型:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Post {
public String id;
public String userId;
public String message;
public String getMessage() {
return message;
}
}
答案 0 :(得分:1)
您的主要模型类看起来像这样。
public class Post {
private String success;
private List<data> data;
public List<data> getData() {
return data;
}
}
这是你的数据类。你需要创建另一个类来检索json arary(对你来说它是数据。)
public class data {
public String id;
public String userId;
public String message;
public String getMessage() {
return message;
}
}
apiService.getFeed(9, new Callback<Post>() {
@Override
public void success(Post post, Response response) {
post.getData().getPositoin(YourPosition).getMessage(); //or you can use for loop
}
@Override
public void failure(RetrofitError retrofitError) {
retrofitError.printStackTrace();
}
});