我想从 JSONArray响应的外部访问HashMap中的电子邮件和电话。我该怎么办?
我尝试制作全局变量并为其分配值。它没有用。
JsonArrayRequest request1 = new JsonArrayRequest(Request.Method.GET,
url,
null,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
List<HashMap<String, String>> list = new ArrayList<>();
for (int i = 0; i < response.length(); i++) {
try {
JSONObject obj = response.getJSONObject(i);
HashMap<String, String> map = new HashMap();
map.put("email", obj.getString("email"));
map.put("phone", obj.getString("phone"));
} catch (Exception e) {
e.printStackTrace();
}
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(HomeActivity.this, "Error"+error, Toast.LENGTH_SHORT).show();
}
});
答案 0 :(得分:0)
在课程的顶层声明HashMap<String, String> map = new HashMap();
并在您的JsonArrayRequest
@Override
public void onResponse(JSONArray response) {
List<HashMap<String, String>> list = new ArrayList<>();
for (int i = 0; i < response.length(); i++) {
try {
JSONObject obj = response.getJSONObject(i);
map.put("email", obj.getString("email"));
map.put("phone", obj.getString("phone"));
} catch (Exception e) {
e.printStackTrace();
}
}
}