Volley解析json(三)

初次使用volley来解析json数据,最初是想着可以直接把每个字段都能取出来的,结果是我想多了!

方法比较粗糙,不过意思大体到位了

private void getJsonVolley() {
		RequestQueue queue = Volley.newRequestQueue(this);
		String JsonUrlData = "http://ts.cdn.duihao.net/json/?f=thumb&catid=2";
		// final ProgressDialog dialog = ProgressDialog.show(this,  
		// "this is laoding",
		// "laoding");
		JsonArrayRequest jsonObjectRequest = new JsonArrayRequest(JsonUrlData,
				new Response.Listener() {

					@Override
					public void onResponse(JSONArray response) {
						// VolleyLog.v("Response:%n %s", response.toString());
						Log.i("log", response.toString());
						
						arrayList = new ArrayList();

						for (int i = 0; i < response.length(); i++) {

							JSONObject object;
							
							try {
								
								object = (JSONObject) response.get(i);
								
								PicBean m_list = new PicBean(object.getInt("id"),

										object.getString("thumb"),

										object.getString("url"));
								
										arrayList.add(m_list);
										
							} catch (Exception e) {
								// TODO Auto-generated catch block
								e.printStackTrace();
							}
							
							Message m = new Message();

							m.what = 1;

							m.obj = arrayList;

							handler.sendMessage(m);
							

						}
						
					}
				}, new Response.ErrorListener() {

					@Override
					public void onErrorResponse(VolleyError error) {
						// TODO Auto-generated method stub
						// VolleyLog.e("Error: ", error.getMessage());
					}
				});

		queue.add(jsonObjectRequest);

	}
我是直接使用了
JsonArrayRequest ,因为不涉及到传对象,就没有去序列化它,使用volley得到的是response,这个就是我们的JsonArray对象,想要使用具体字段,就需要去循环得到了


你可能感兴趣的:(Volley框架)