sunshineDade 2016-08-23 04:12 采纳率: 66.7%
浏览 961
已采纳

android JSON解析问题

public static List getAllNewsFromNetwork(Context context) {
final List list = new ArrayList();
RequestQueue queue = Volley.newRequestQueue(context);

    final JsonObjectRequest request = new JsonObjectRequest(URL, null, new Response.Listener<JSONObject>() {
        @Override
        public void onResponse(JSONObject response) {
            Log.e(TAG, "response: " + response);
            try {
                JSONObject result = response.getJSONObject("result");
                JSONArray array = result.getJSONArray("data");
                Log.e(TAG, "array: " + array);
                for (int i = 0, len = array.length(); i < len; i++) {
                    JSONObject object = (JSONObject) array.opt(i);
                    Log.e(TAG, "object: " + object);
                    NewsInfo info = new NewsInfo();
                    info.setTitle(object.getString("title"));
                    info.setThumbnail_pic_s(object.getString("thumbnail_pic_s"));
                    info.setThumbnail_pic_s02(object.getString("thumbnail_pic_s02"));
                    info.setThumbnail_pic_s03(object.getString("thumbnail_pic_s03"));
                    info.setDate(object.getString("date"));
                    info.setType(object.getString("realtype"));
                    info.setUrl(object.getString("url"));
                    Log.e(TAG, "onResponse: info.toString() ==" + info.toString());
                    list.add(info);
                }
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Log.e(TAG, "onErrorResponse: " + error);
        }
    });
    queue.add(request);
    queue.start();
    Log.e(TAG, "getAllNewsFromNetwork: list.size() ==" + list.size());
    return list;
}

    这个函数返回的list为什么是空的?response输出的数据一直都有,解析也没出现问题,

求大神指教

  • 写回答

1条回答 默认 最新

  • bdmh 移动开发领域优质创作者 2016-08-23 05:27
    关注

    JsonObjectRequest是个异步请求吧,你返回list时,请求还没回来,所以list里面没有数据

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。