这是父模型类
public class StoresListModel {
@SerializedName("acf")
private Acf acf;
public Acf getAcf() {
return acf;
}
public void setAcf(Acf acf) {
this.acf = acf;
}
}
模型类内部的Acf类
public class Acf {
public StoreImage getStoreImage() {
return storeImage;
}
}
在Acf内有StoreImage类
public class StoreImage {
@SerializedName("url")
private String url;
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
我想使用StoreListModel类的Reference设置StoreImage类的setUrl()的值。
目前我正在这样做
StoresListModel m = new StoresListModel();
m.getAcf().getStoreImage().setUrl("SOME_DATA");
但是我遇到了错误
.models.storesListModel.Acf.getStoreImage()' on a null object reference
请帮助我,如何实现?
答案 0 :(得分:0)
这样做的时候
StoresListModel m = new StoresListModel();
您创建了一个新的StoresListModel对象,但是它的成员变量acf
尚未初始化。
在下一行
m.getAcf()
将返回null,并且m.getAcf().getStoreImage()
无法正常工作,因为getAcf()为null。
答案 1 :(得分:0)
您的班级
public class StoresListModel {
private Acf acf;
public Acf getAcf() {
return acf;
}
public void setAcf(Acf acf) {
this.acf = acf;
}
public class Acf {
private StoreImage storeImage;
public StoreImage getStoreImage() {
return storeImage;
}
public void setStoreImage(StoreImage storeImage) {
this.storeImage = storeImage;
}
public class StoreImage {
private String url;
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
}
}
}
尝试一下
StoresListModel.Acf.StoreImage storeImage = new StoresListModel().new Acf().new StoreImage();
现在设置数据,
storeImage.setUrl("SOME_DATA");