Установить Spinner выбранный элемент по значению - приведение SpinnerAdapter к ArrayAdapter? - PullRequest
0 голосов
/ 03 июня 2018

У меня есть Spinner, который заполняется массивом из strings.xml, пользователь устанавливает его на что-то, я сохраняю его в настройках - я хотел бы сохранить строку, так как я печатаю ее в нескольких местах дальше, вместо позиции,Теперь, когда пользователь возвращается, я хочу установить Spinner на ранее выбранное значение.

Если я делаю

val myAdapter = mySpinner.adapter as ArrayAdapter<String>
mySpinner.setSelection(myAdapter.getPosition(savedValue))

, это работает, но Studio предупреждает меня о непроверенном приведении.Есть ли какой-то правильный и красивый способ сделать это?Или мне нужно пойти, создать ArrayAdapter из массива строковых ресурсов и искать там?

1 Ответ

0 голосов
/ 04 июня 2018
String[] stringArray = getResources().getStringArray(R.array.stringlist);
val itemPosition = Arrays.asList(stringArray).indexOf(string)
mySpinner.setSelection(itemPosition)
...