Как установить другое значение для элемента на спиннер Android? - PullRequest
0 голосов
/ 24 октября 2019

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

Код, который я использую для счетчика, выглядит следующим образом:

MaterialSpinner spinner = (MaterialSpinner) findViewById(R.id.spinner);
spinner.setItems("Ice Cream Sandwich", "Jelly Bean", "KitKat", "Lollipop", "Marshmallow");
spinner.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener<String>() {
    @Override public void onItemSelected(MaterialSpinner view, int position, long id, String item) {
        //Snackbar.make(view, "Clicked " + item, Snackbar.LENGTH_LONG).show();
        Toast.makeText(activity, item, Toast.LENGTH_SHORT).show();
    }
}); 

Использование этой библиотеки: https://github.com/jaredrummler/MaterialSpinner

Итак, как мне проанализировать ответ json и установить значение 2 для элемента? (Имя строки, которое является show, и идентификатор этого элемента, даже в ответе json.)

Ответы [ 2 ]

1 голос
/ 24 октября 2019
  1. Создание класса POJO для хранения анализа данных из JSON
    public class AndroidVersion {
        String name;  
        String id;
    }
Подготовлено List<AndroidVersion> из JSON с использованием библиотеки Gson
    List<AndroidVersion> androidVersions = Gson().fromJson(json, AndroidVersion.class);

Создание пользовательского адаптера ArrayAdapter / SpinnerAdapter с этим списком

Установите для этого адаптера значение Spinner

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

Если вы знаете структуру JSON, вы можете создать POJO, представляющие классы объектов в JSON, а затем использовать библиотеку GSON для анализа JSON в ваших объектах Java.

Использовать Gson ()для анализа вашего списка JSON в Java List и обновления элементов в Spinner новым списком.

Gson:

Зависимость Gradle:

dependencies {
  implementation 'com.google.code.gson:gson:2.8.6'
}

Для примеров и настройки Gson, хорошими ссылками являются следующие: https://github.com/google/gson - Официальный сайт https://guides.codepath.com/android/leveraging-the-gson-library - Учебное пособие

...