Как получить массив данных в ответе Json, используя модификацию в Android? - PullRequest
0 голосов
/ 24 октября 2018

Эй, я получил ответ json, который также содержит строки и массивы, выборка строк работает нормально, но при попытке получить данные типа массива это выдает ошибку в студии.

{
"body": [
    {
       "customer": "erp touch",

      "description": [
        "ythn",
        "bgtr",
        "ythn"
    ]

  }
 ]
}

Я могу выбрать клиентано не смог сделать это для описания, вот то, что я использую для описания

@SerializedName("description")
private List<String> description = null;

public List<String> getDescription() {
    return description;
}

И это то, что я использую, чтобы получить его

 OrderListResponse orderListResponse = response.body().getBody();

 description_tv.setText(orderListResponse.getDescription()); // this line give error cannot resolve setText(java.util.list<java.lang.string>)

ПРИМЕЧАНИЕ:Пожалуйста, не путайте с response.body (). GetBody (), потому что я не опубликовал полный ответ.

Подскажите, пожалуйста, как получить эти данные, любая помощь будет заметна.

СПАСИБО !!

РЕДАКТИРОВАТЬ

Привет всем, на самом деле я со своим другом понял, как мы хотим показать эти данные в массиве, и у меня возникли проблемы с этим.

Я хочу получить этот массив описаний из ответа json и показать его различные элементыв разных текстовых представлениях.Использование,

description_tv1.setText(orderListResponse.getDescription().get(0));
description_tv2.setText(orderListResponse.getDescription().get(1));
description_tv3.setText(orderListResponse.getDescription().get(2));

решит проблему, но элементы в массиве могут варьироваться до любого числа, так что в действительности я не знаю, сколько текстовых представлений я должен использовать, это настоящая проблема.

Можно ли как-нибудь создать текстовые просмотры в соответствии с моими проблемами?

Будем благодарны за любые предложения или помощь.

СПАСИБО СНОВА!

Ответы [ 2 ]

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

Попробуйте добавить с TextView

 for (String s : orderListResponse.getDescription()){
                description_tv.append(s);
0 голосов
/ 24 октября 2018

setText не принимает список в качестве параметра.То, что вы можете попробовать, это присоединиться к элементам в вашем списке, используя .join, как это

String result = TextUtils.join(", ", orderListResponse.getDescription());

И затем вы можете позвонить setText(result)


ПростоПодсказка: убедитесь, что вы сначала проверили результат и описание!

List<String> description = orderListResponse.getDescription();
if (description == null) { // show error }
...