Java 如何解析改装2响应以显示数据?
我想使用改型2和Gson(或GsonFormat,我不太确定)显示API()中的“title”,Java 如何解析改装2响应以显示数据?,java,android,rest,retrofit2,Java,Android,Rest,Retrofit2,我想使用改型2和Gson(或GsonFormat,我不太确定)显示API()中的“title”,我创建了以下类,Modal.java package arpit.retrodemo; public class Modal { private String title; public String getTitle(){ return title; } } APIService接口, package arpit.retrodemo; import ja
我创建了以下类,
Modal.java
package arpit.retrodemo;
public class Modal {
private String title;
public String getTitle(){
return title;
}
}
APIService接口,package arpit.retrodemo;
import java.util.List;
import retrofit.Call;
import retrofit.http.GET;
public interface APIService {
@GET("/posts")
Call<List<Modal>> getDetails();
}
所以我在onResponse方法中从API获得响应,但是
如何将每个标题存储在Modal.java类的对象中,一个列表“users”将包含Modal.java的所有对象,以便我以后可以使用“users”列表上的迭代器显示标题。如果所有其他事情都正常,您可以使用这段代码
Type listType = new TypeToken<ArrayList<Modal>>() { // object can be String here
}.getType();
List<Modal> list = new Gson().fromJson(response.body().string(), listType);
Type listType=new-TypeToken(){//对象可以是字符串
}.getType();
List List=new Gson().fromJson(response.body().string(),listType);
1)。首先,请在Modal类中为title添加setter函数
2) 。您可以从response.body()
中找到模态类的列表。比如说
@Override
public void onResponse(Response<List<Modal>> response) {
if(response.isSuccess()){
List<Modal> titlesList=response.body();
}
}
@覆盖
公共响应(响应){
if(response.issucess()){
List titlesList=response.body();
}
}
您可能在response.body()内的onResponse方法中获得模态类列表。你可以检查一下,但是你的回复中有。body()?你的Json中需要更正,根据上面的评论,它不是标准的。当我尝试访问titleList时,它会给出空指针异常,使用for each asfor(Modal mod:titleList){Log.d(“find”,mod.getTitle());}
你调试过你的代码吗?你的回答是否为空。body()?嘿,它工作得很好,我犯了一个可怕的愚蠢错误,谢谢你的帮助,请你也看看这个问题,我真的很感谢你的帮助。很高兴它工作了:)
Type listType = new TypeToken<ArrayList<Modal>>() { // object can be String here
}.getType();
List<Modal> list = new Gson().fromJson(response.body().string(), listType);
@Override
public void onResponse(Response<List<Modal>> response) {
if(response.isSuccess()){
List<Modal> titlesList=response.body();
}
}