【发布时间】:2016-02-26 01:28:54
【问题描述】:
我有一个JSONObject,格式如下:
[{"ascii_name":"Rio de Janeiro"},{"ascii_name":"Riyadh"},{"ascii_name":"Rome"},{"ascii_name":"Rawalpindi"},{"ascii_name":"Rabat"},{"ascii_name":"Recife"},{"ascii_name":"Ra's Bayrut"},{"ascii_name":"Rajkot"}]
已使用以下代码创建:
while($row = $all_cities->fetch_array())
{
$myArray["ascii_name"] = $row["ascii_name"];
$returnArray[] = $myArray;
}
echo json_encode($returnArray);
现在我正在使用 Volley 任务将其加载到我的 Android 应用程序中。在onResponse 方法中,我想获取每个城市名称并使用for 循环将其加载到ArrayList<String> 中。这是我现在的代码,但是由于s 是JSONObject 而不是JSONArray,所以它不起作用。
@Override
public void onResponse(String s) {
try {
JSONObject jsonObject = new JSONObject(s);
for (int i = 0; i < jsonObject.length(); i++) {
JSONObject a = jsonObject.getJSONObject(i);
....... more code which isn't relevant
}
【问题讨论】:
-
你的服务器返回的是
JSONArray而不是JSONObject,所以不需要转换它。
标签: java android json arraylist jsonobject