Как разобрать данные из динамического JSON модернизации - PullRequest
0 голосов
/ 23 октября 2019

Я хочу проанализировать данные снизу заданного JSON в спиннер для Android. Класс POJO не работает для этого. Я использую модификацию и GSON android studio

"complaint_list": {
  "1":"light not working",
  "2":"fan not working",
  "3":"refrigerator not working ",
  "4":"lock not working"
}

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

Ответы [ 2 ]

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

Если ваш Json нравится

    { 
   "complaint_list":{ 
      "1":"light not working",
      "2":"fan not working",
      "3":"refrigerator not working ",
      "4":"lock not working"
   }
}

Вам необходимо выполнить такой анализ

JSONObject jsonMain = new JSONObject("YOUR_JSON");
JSONObject json= json.getJSONObject("complaint_list");
ArrayList complaintList= new ArrayList<String>();
Iterator<String> iter = json.keys();
while (iter.hasNext()) {
    String key = iter.next();
    try {
        String value = json.get(key);
        //json.getString(value) --> here you can get your jsonObject value.  
        complaintList.add(json.getString(value));
    } catch (JSONException e) {
        // Something went wrong!
    }
}
0 голосов
/ 23 октября 2019
  1. Создайте список строк из вашего json
  2. Заполните спиннер ArrayAdapter

    ArrayAdapter<String> spinnerAdapter = new ArrayAdapter(context, android.R.layout.simple_list_item_1, myList);  
    spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    mySpinner.setAdapter(spinnerAdapter);
    
...