在一个循环中访问网络获取Json数据,在回调函数中解析Json数据并给适配器赋值,在RecycleView中显示数据,结果发现只能显示最后的一项数据,也就是没有显示4项数据,跟踪回调函数内部,发现只执行了一次。请问该如何处理呢?
代码:
for (int i = 0; i < 4; i ++) {
OneNetApi.setAppKey(KeyList.get(i));
OneNetApi.querySingleDevice(IDList.get(i), new OneNetApiCallback() { // 回调函数
@Override
public void onSuccess(String response) {
JsonObject resp = new JsonParser().parse(response).getAsJsonObject();
int errno = resp.get("errno").getAsInt();
if (0 == errno) {
mDeviceItems.add(resp.get("title").getAsString());
mAdapter.setNewData(mDeviceItems);
}
} @Override
public void onFailed(Exception e) {
……
}
代码:
for (int i = 0; i < 4; i ++) {
OneNetApi.setAppKey(KeyList.get(i));
OneNetApi.querySingleDevice(IDList.get(i), new OneNetApiCallback() { // 回调函数
@Override
public void onSuccess(String response) {
JsonObject resp = new JsonParser().parse(response).getAsJsonObject();
int errno = resp.get("errno").getAsInt();
if (0 == errno) {
mDeviceItems.add(resp.get("title").getAsString());
mAdapter.setNewData(mDeviceItems);
}
} @Override
public void onFailed(Exception e) {
……
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货