Я строю диалог со спиннером. Когда диалог завершен, он вызывает метод родительского действия со строковым аргументом, причем аргумент представляет собой выбранное строковое значение.
Мой текущий подход:
я настраиваю адаптер массива счетчика следующим образом:
ArrayAdapter<String> adapter =
new ArrayAdapter<String>(getActivity(), android.R.layout.simple_spinner_item,
categoryNames);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mySpinner.setAdapter(adapter);
categoryNames
— это массив строк. Когда диалог завершен, выбранный categoryName
используется в качестве параметра для вызова метода родительского действия.
Что я действительно хочу сделать
На самом деле я хочу отобразить список из Category
объектов. Класс Category
имеет 2 свойства — categoryId
и categoryName
. Счетчик должен по-прежнему отображать categoryName
в раскрывающемся списке, но когда диалоговое окно будет готово, он должен быть в состоянии однозначно сказать, какой Category
был выбран, и вызвать метод обратного вызова родительского действия с categoryId
выбранной категории.
Может быть несколько Category
с одним и тем же categoryName
.
Вопрос: Как это сделать?