Задать вопрос
@yarovoi_ivan

Как взять вложенный объект из response.body() для дальнейшей работы?

вот структура json
BODY
{
  "keyword": "Звездные",
  "pagesCount": 15,
  "searchFilms": [
    {
      "id": "714888",
      "type": "KPFilm",
      "nameRU": "Звёздные войны: Пробуждение силы",
      "nameEN": "Star Wars: Episode VII - The Force Awakens",
      "description": "США, Джей Джей Абрамс(фантастика)",
      "posterURL": "film_iphone/iphone60_714888.jpg",
      "filmLength": "2:16",
      "year": "2015",
      "country": "США",
      "genre": "фантастика, фэнтези, боевик",
      "rating": "7.3 (97 627)"
    },
...
}

private void loadJSON(){
    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl("http://api.learn2crack.com")
            .addConverterFactory(GsonConverterFactory.create())
            .build();
    final RequestInterface request = retrofit.create(RequestInterface.class);
    Call<JSONResponse> call = request.getJSON();
    call.enqueue(new Callback<JSONResponse>() {
        @Override
        public void onResponse(Call<JSONResponse> call, Response<JSONResponse> response) {

            Log.d(TAG, "response.body()");

            JSONResponse jsonResponse = response.body();
            data = new ArrayList<>(Arrays.asList(jsonResponse.getMuvi()));

            Log.d(TAG, data.toString());

            adapter = new DataAdapter(data);
            recyclerView.setAdapter(adapter);
        }
        @Override
        public void onFailure(Call<JSONResponse> call, Throwable t) {
            Log.d("Error",t.getMessage());
        }
    });
    }


но в response.body(); там же все подрят а мне нужен объект "searchFilms" и дальше с ним работать
  • Вопрос задан
  • 1213 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Kanesy
1. Создаешь сначала класс SearchFilms с соответсвующими полями.
2. Потом создаешь класс BaseResponse у которого будет поле SearchFilms.
3. Конвертируешь response.body() в нужный тебе BaseResponse
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы