这里是我要做到这一点,但我得到一个错误在该行JSONObject c = orders.getJSONObject(i);
:的JSONObject解析
Error:(95, 57) error: incompatible types: int cannot be converted to String
也许有这样做的过程中更好的办法,请大家帮忙
@Override
protected String doInBackground(String... params) {
try {
List<NameValuePair> param = new ArrayList<NameValuePair>();
JSONObject json = jsonParser.makeHttpRequest(URL_ORDERS, "GET",
param, token);
JSONObject data = json.getJSONObject("data");
JSONObject orders = data.getJSONObject("orders");
Log.d("JSON DATA", data.toString());
Log.d("JSON ORDERS", orders.toString());
for (int i = 0; i < orders.length(); i++) {
JSONObject c = orders.getJSONObject(i);
imageurl = c.getString(TAG_IMAGE);
Log.d("IDK", imageurl);
title = c.getString(TAG_TITLE).substring(0, 20);
price = c.getString(TAG_PRICE);
status = c.getString(TAG_PSTATUS);
symbol = c.getString(TAG_PRICESYMBOL);
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_TITLE, title);
map.put(TAG_PRICE, price);
map.put(TAG_PSTATUS, status);
map.put(TAG_PRICESYMBOL, symbol);
map.put(TAG_IMAGE, imageurl);
orderList.add(map);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
这里是我的JSONResponse http://paste.ofcode.org/umwZRdi7B9Ve7kVjSRNTk8
我觉得命令应该是'JSONArray' – zozelfelfo 2014-10-06 08:47:18
AFAIK你的json格式不正确。但是,如果不是,你想迭代命令,那么你应该把它看作是一个JSONArray而不是一个对象 – 2014-10-06 08:48:27
api部分的人就是这样做的,难道没有其他解决方案吗? – Alex 2014-10-06 09:05:18