Как я уже понял, спиннер обновить легко и просто не получится. У меня при включении в него загружается вот этот пустой List
List<String> currencies = new ArrayList<>();
Далее подгружается из сети новый список и где то в методе
currencies.clear();
currencies.addAll(Data.getCurrencies());
Collections.sort(currencies);
Выполнить обновление не могу из этого метода, только в onCreate
срабатывает
SpinnerAdapter.notifyDataSetChanged();
Но тем не менее если кликнуть на спиннер , то там есть тот самый загруженный массив, но поле где стоит выбранная позиция, пустое и если что то выбрать, то там все равно ничего не появляется.
И что интересно при запросе нового списка, у меня нормально срабатывает этот код (не дебажил, но вроде нет экспешена)
currencies.clear();
currencies.addAll(Data.getCurrencies());
Collections.sort(currencies);
Пробую по другому: изначально массив теперь делаю не пустым
List<String> currencies = Arrays.asList("AUD", "BGN")
спиннер в onCreate успевает заполниться, но следом вызывается код и на любой из этих строчек неизвестное исключение.
currencies.clear();
currencies.addAll(Data.getCurrencies());
Collections.sort(currencies);
Может я массив изначально как то не так объявил?...
Читал про Cursor Loader и заполнение с использованием промежуточной строки, но вроде они отношение имеют только к загрузке спиннера из базы данных.
Вот адаптер , он в onCreate в активити создается.
ArrayAdapter<String> SpinnerAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, currencies); //Адаптер для спиннера
SpinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
SpinnerOfCurrencies.setAdapter(SpinnerAdapter);
SpinnerOfCurrencies.setSelection(currencies.indexOf("EUR"));
//Обработчик нажатия на спиннер
SpinnerOfCurrencies.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
((TextView) parent.getChildAt(0)).setTextColor(Color.parseColor("#ffff8800")); //Цвет текста выбранной позиции в спинере
((TextView) parent.getChildAt(0)).setTextSize(18);
CurrentCurrency(position);
UploadData();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
У меня задача настороить logbackxml так, чтобы каждый день создавался новый файл log_%d{yyyy-MM-dd}
В applicationproperties добавлены поля
ЗдравствуйтеСегодня столкнулся с такой проблемой: В android studio, в дизайнере приложение выглядит нормально, кнопки отдельны друг от друга, но При...
Проверить надо с помощью JUnitЕсть список слов, нужно проверить, есть ли в этом списке определенное слово или нет