Я создал Spinner и активировал слушателя:
customerListSpinner.setOnItemSelectedListener(new OnItemSelectedListener(){
public void onItemSelected(AdapterView<?> adapter, View view, int position, long id) {
// I do some work here
}
public void onNothingSelected(AdapterView<?> arg0) {
isInitRadioGroup = false;
}
);
Сначала я добавил в Spinner три значения: «Поиск», «Сотрудник», «Компания».
Если пользователь выбирает «Поиск», отображается новая ListActivity, и в результате выбранное значение добавляется к вышеуказанному Spinner.
Таким образом, я выполняю некоторые действия по выбору вращающегося предмета. Теперь, когда экран отображается в первый раз, по умолчанию отображается «Поиск». Чтобы запустить обработку ListActivity, пользователь должен снова выбрать «Поиск». На этот раз обратный вызов ItemSelected не вызывается. Я имею в виду, что если значение в Spinner уже выбрано, то при повторном выборе того же значения слушатель не запускается.
Принимая во внимание:
Когда экран отображается в первый раз, по умолчанию отображается «Поиск». Пользователь выбирает значение «Сотрудник» (для этого выполняется обработка, вызывается onItemSelected, так как предыдущее выбранное значение отличается от значения, выбранного пользователем). Затем пользователь выбирает значение «Поиск». На этот раз вызывается метод onItemSelected, и он успешно добавляет новое значение в Spinner.
Это ошибка Android. Я проверил, нет ли ошибки в моем коде.