我试图从下面的json中获取temp_max的值,但是我得到了null。此外,我能够获得cod,message和cnt的值。
我正在使用“”response.body()。getTempMax()“”来获取值。如果这不是正确的方法,请告诉我。
模型类
public class Main {
@SerializedName("temp_min")
@Expose
private Double tempMin;
@SerializedName("temp_max")
@Expose
private Double tempMax;
public Double getTempMin() {
return tempMin;
}
public void setTempMin(Double tempMin) {
this.tempMin = tempMin;
}
public Double getTempMax() {
return tempMax;
}
public void setTempMax(Double tempMax) {
this.tempMax = tempMax;
}
}
}
MainActivity
ApiInterface apiInterface= ApiClient.getClient().create(ApiInterface.class);
Call<Main> call = apiInterface.getWeather();
call.enqueue(new Callback<Main>()
{
@Override
public void onResponse(Call<Main> call, Response<Main> response)
{
response.body();
Toast.makeText(MainActivity.this, "The cnt is " + response.body().getTempMax(), Toast.LENGTH_LONG).show();
}
@Override
public void onFailure(Call<Main> call, Throwable t)
{
Log.e("Main", t.toString());
}
});
答案 0 :(得分:0)
您需要更新为解析提供的模型类
说
class JSONResponse{
int cod;
String message;
int cnt;
ArrayList<Data> list;
}
class Data{
long dt;
Main main;
}
class Main{
//All properties related to main class
}
这就是你需要构建的方式。这不简单吗?现在,当您需要访问Main类的成员时,您需要从JsonResponse类遍历到Data类并访问Main对象并访问该属性。