class mAsyncTask extends AsyncTask<String, String, List<UnbindOlder>>
{
@Override
protected List<UnbindOlder> doInBackground(String... params) {
Log.i("doInBackground","0000000000000000000");
if(userid!=null) {
String url = "http://192.168.1.200:8080/onecard/app/older/getNoBindOlderByUser";
OkHttpUtils.post(url)//
.url(url)//
.params("userId", userid)//
.execute(new StringCallback() {
@Override
public void onSuccess(String s, Call call, Response response) {
JsonData jsonData = judgeJsonDataFormat(s);
int state = jsonData.getState();
String json = new Gson().toJson(jsonData.getResult());
if (json != null && !TextUtils.isEmpty(json.toString())) {
try {
unbindOlderList = new Gson().fromJson(json, new TypeToken<ArrayList<UnbindOlder>>() {}.getType());
Log.i("parseDataByGson",unbindOlderList.get(1).getIdCode());
} catch (Exception e) {
Log.e("1234", e.toString());
}
}
}
});
}
return unbindOlderList;
}
@Override
protected void onPostExecute(final List<UnbindOlder> unbindOlderList) {
super.onPostExecute(unbindOlderList);
Log.i("onPostExecute","0000000000000000000");
if(unbindOlderList.size()>0){Log.i("onPostExecute","unbindOlderList.size()>0");}
mAddolderAdapter = new AddolderAdapter(my,userid,unbindOlderList);
mListView.setAdapter(mAddolderAdapter);
}
}
doInBackground里解析数据还没解析完就执行了onPostExecute
先打印了Log.i("doInBackground","0000000000000000000");
然后打印了 Log.i("onPostExecute","0000000000000000000");
最后打印Log.i("parseDataByGson",unbindOlderList.get(1).getIdCode());
怎么解决解析数据延迟的问题,适配器需要加载解析后的数据