Android Spinner - onItemSelected / setOnItemSelectedListener не запускается

Это сводит меня с ума, поскольку это то, что я делал раньше, но не могу выяснить, почему он сейчас не работает ...

У меня есть кнопка меню, реализованная обычным способом с помощью файла menu.xml и метода onOptionsItemSelected с переключателем в нем, который создает и отображает счетчик.

Я добавил setOnItemSelectedListener , но он никогда не запускается. Появляется счетчик, я выбираю вариант или возвращаюсь, ни onItemSelected , ни onNothingSelected не вызываются.

Вот весь код между «case» и «return true» для оператор переключения управления кнопкой меню. ( topThis - переменная, относящаяся к контексту действия - отлично работает для всех остальных тостов в приложении)

String[] widgetModes = {"Mode 1", "Mode2"};
ArrayAdapter<String> widgetModeAdapter = new ArrayAdapter<String> (this, android.R.layout.simple_spinner_item, widgetModes);
widgetModeAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

Spinner widgetModeSpinner = new Spinner(this);
widgetModeSpinner.setAdapter(widgetModeAdapter);
widgetModeSpinner.setPrompt("Choose Widget Mode");

widgetModeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() 
{
    @Override
    public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) 
    {
        Toast.makeText(topThis, "derp", Toast.LENGTH_LONG).show();
    }

    @Override
    public void onNothingSelected(AdapterView<?> parentView) 
    {
        Toast.makeText(topThis, "herf", Toast.LENGTH_LONG).show();
    }
});

widgetModeSpinner.performClick();

Есть идеи? Я смутно подозреваю, что проблема в том, что я создаю Spinner программно ...

18
задан HitOdessit 3 October 2012 в 14:51
поделиться