Intereting Posts
Максимальная длина версии AndroidName / versionCode (манифест) Пользовательская схема URL для Кордовы Как я могу реализовать привязку SSL-сертификата при использовании React Native Пользовательские хромированные вкладки требуют выбора нескольких браузеров Как преобразовать время в формате YYYY-MM-DDTHH: mm: ss.SSSZ в часовой пояс по умолчанию? Android – восстановление последнего просмотра Активность Кинжал и нож для масла против андронов Android Проблема с изображением, имеющим прозрачный фон в Android SpannableStringBuilder для создания String с несколькими шрифтами / размерами текста и т. Д. Пример? Биллинг в приложении v3 не может запрашивать элементы без сетевого подключения или в режиме полета / полета RelativeLayout выровнять родительский * боковой * + margin * side * MPAndroidChart BarChart горизонтальный / вертикальный Признание нескольких ключевых слов с помощью PocketSphinx Извлечение имен файлов из URI содержимого SAF Элементы не имеют одинаковой ширины при использовании утилиты RecyclerView GridLayoutManager для создания интервала столбцов с помощью ItemDecoration

Установить ключ и значение в прядильщике

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

Введите описание изображения здесь

Код:

final View rootView = inflater.inflate(R.layout.fragment_photos, container, false); Spinner spin=(Spinner)rootView.findViewById(R.id.spinner1); HashMap<Integer, String> P_Hash=new HashMap<Integer, String>(); Update Get_Information=new Update(rootView.getContext()); ArrayList<String> Province_NAME=new ArrayList<String>(); Province_NAME=Get_Information.GET_Province(); ArrayList<Integer> Province_ID=new ArrayList<Integer>(); Province_ID=Get_Information.Get_Province_ID(); for (int i = 0; i < Province_ID.size(); i++) { P_Hash.put(Province_ID.get(i), Province_NAME.get(i)); Log.d("Province_ID.get(i)", Province_ID.get(i)+""); Log.d(" Province_NAME.get(i)", Province_NAME.get(i)+""); } ArrayAdapter<HashMap<Integer, String>> adapter = new ArrayAdapter<HashMap<Integer,String>>(rootView.getContext(), android.R.layout.simple_spinner_item); adapter.add(P_Hash); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spin.setAdapter(adapter); 

Solutions Collecting From Web of "Установить ключ и значение в прядильщике"

Попробуйте этот путь, надеюсь, что это поможет вам решить вашу проблему.

Подготовить значение для счетчика

 String[] spinnerArray = new String[Province_ID.size()]; HashMap<Integer,String> spinnerMap = new HashMap<Integer, String>(); for (int i = 0; i < Province_ID.size(); i++) { spinnerMap.put(i,Province_ID.get(i)); spinnerArray[i] = Province_NAME.get(i); } 

Задайте значение для вращения

 ArrayAdapter<String> adapter =new ArrayAdapter<String>(context,android.R.layout.simple_spinner_item, spinnerArray); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); 

Получите значение для вращения

 String name = spinner.getSelectedItem().toString(); String id = spinnerMap.get(spinner.getSelectedItemPosition()); 

Лучший подход к заполнению счетчика ключом и значением должен быть:

Шаг 1. Создайте класс POJO, который позаботится о ключе и ценности

 public class Country { private String id; private String name; public Country(String id, String name) { this.id = id; this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } //to display object as a string in spinner @Override public String toString() { return name; } @Override public boolean equals(Object obj) { if(obj instanceof Country){ Country c = (Country )obj; if(c.getName().equals(name) && c.getId()==id ) return true; } return false; } } 

Примечание. Метод toString () важен, так как он отвечает за отображение данных в spinner, вы можете изменить toString () в соответствии с вашими потребностями

Шаг 2 : Подготовьте данные для загрузки в прядильщик

  private void setData() { ArrayList<Country> countryList = new ArrayList<>(); //Add countries countryList.add(new Country("1", "India")); countryList.add(new Country("2", "USA")); countryList.add(new Country("3", "China")); countryList.add(new Country("4", "UK")); //fill data in spinner ArrayAdapter<Country> adapter = new ArrayAdapter<Country>(context, android.R.layout.simple_spinner_dropdown_item, countryList); spinner_country.setAdapter(adapter); spinner_country.setSelection(adapter.getPosition(myItem));//Optional to set the selected item. } 

Шаг 3: и, наконец, получите ключ и значение выбранного элемента в onseemselected метод прослушивания spinner

 spinner_country.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Country country = (Country) parent.getSelectedItem(); Toast.makeText(context, "Country ID: "+country.getId()+", Country Name : "+country.getName(), Toast.LENGTH_SHORT).show(); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); 

Все лучшее, Счастливое кодирование!