我创建了一个pojo类..我存储了从api获取的数据..
在MainActivity.java中,我使用loopj来解析json数据
storeList = new ArrayList<AllStore>();
try {
JSONArray jsonArray = new JSONArray(new String(responseBody));
for (int i = 0; i < jsonArray.length(); i++) {
store = new AllStore();
store.setLocation(jsonArray.getJSONObject(i).getString("storeName"));
store.setAddress(jsonArray.getJSONObject(i).getString("address"));
我的pojo课程
AllStore.java
public class AllStore{
String storeName;
String address;
public AllStore(String storeName, String address){
this.storeName= storeName;
this.location = location;
}
public AllStore{
}
public String getLocation() {
return location;
}
public void setLocation(String location) {
this.location = location;
}
public String getStoreName() {
return storeName;
}
public void setStoreName(String storeName) {
this.storeName = storeName;
}
}
在其他java类中..而不是当我在做
时的适配器类AllStore allStore = new Allstore();
mText.setText(allStore.getStoreName);
这里allStore.getStoreName值为null,显示..如何解决这个问题..
请帮忙
答案 0 :(得分:2)
AllStore allStore = new Allstore();
mText.setText(allStore.getStoreName());
在这里,您将使用默认构造函数
创建一个新对象Allstorepublic AllStore{
}
如果你致电.getStoreName
,它将返回null,因为你没有设置任何。
在另一种方法中,您必须在te数组列表中添加商店对象
store.setLocation(jsonArray.getJSONObject(i).getString("storeName"));
store.setAddress(jsonArray.getJSONObject(i).getString("address"));
storeList.add(store);
稍后,如果您想使用列表中项目的名称,您可以这样做:
mText.setText(storelist.get(index).getStoreName());
其中index
是项目列表中的位置。