Почему arrayList всегда пуст в цикле результата ответа Volley? - PullRequest
0 голосов
/ 13 октября 2018

carList объявлен как общедоступная переменная в классе, и журнал показывает, что значения добавляются в массив, но когда я вызываю список пустым, как решить его с помощью ответа Volley?

public void onResponse(JSONObject response) {
try {
    JSONArray resArray = response.getJSONArray("result");

    for(int i=0;i<resArray.length();i++) {
        JSONObject car = resArray.getJSONObject(i);
        String id = car.getString("id");
        String brand = car.getString("brand");
        String created = car.getString("created");

        carList.add(new CarListItem(brand, plate_number));
        Log.d(TAG, "ADDED___: " +brand + " " + plate_number);
    }

Спасибо

1 Ответ

0 голосов
/ 17 октября 2018

@ Benp Вы правы, решение состоит в том, чтобы добавить адаптер утилизатора в корпус onResponse, как здесь:

    public void onResponse(JSONObject response) {
  try {
    JSONArray resArray = response.getJSONArray("result");    
    for (int i = 0; i < resArray.length(); i++) {
      JSONObject car = resArray.getJSONObject(i);
      String id = car.getString("id");
      String brand = car.getString("brand");
      String created = car.getString("created");      
      carList.add(new CarListItem(car_id, brand, plateNumber, color));
    }
  } catch (JSONException e) {
    e.printStackTrace();
  }
  if (carList.size() > 0) {
    mAdapter = new RecyclerAdapterCarsList(carList);
    buildRecyclerView();
  }
}

Это было просто, нужна небольшая подсказка, чтобы исправить это;)

Спасибо за помощь

...