我现在面临的问题是我只想在onPostExecute()中设置json数组中的字符串数据。我通过许多教程对其进行了修改,但是,我无法设置MainActivity中的Text。我已在下面添加了示例代码。我想知道数据是否错误。
@SuppressWarnings("unchecked")
protected void onPostExecute(JSONObject jsonobject) {
try {
jsonarray = jsonobject.getJSONArray("grape");
outerjson = jsonarray;
String ids = jsonobject.optString("id");
String tpes = jsonobject.optString("type");
for (int i = 0; i < jsonarray.length(); i++) {
HashMap<String, String> map = new HashMap<String, String>();
jsonobject = jsonarray.getJSONObject(i);
String str = "";}
// Step 3.
map1 = new HashMap<String, String>();
// this is the last step 4.
try {
JSONArray jArray = new JSONArray(str);
for (int i = 0; i < jArray.length(); i++) {
JSONObject json = null;
json = jArray.getJSONObject(i);
map1.put("id", json.getString("id"));
map1.put("type", json.getString("type"));
}
result.setText(jsonarray.toString());
///set the json in here
}catch (JSONException e) {}
} catch (JSONException e) {}
progressDialog.dismiss();
}
答案 0 :(得分:0)
信息不足,但我会尝试:
MyData data = gson.fromJson(jsonobject, MyData.class)
使代码更清晰。 result.setText(string);
按照以下3个步骤,找到错误,你会。