Попытка создать событие spinner.OnItemSelectedListener в android

Я успешно создал Spinner, который содержит элементы: Hello1, Hello2 и Hello3.

Теперь я пытаюсь создать событие «OnItemSelectedListener», поэтому, когда один щелчок по элементу, я пытаюсь поймать этот элемент в " spinnerItemClick ».
(У меня есть специальный адаптер, но проблема будет сосредоточена на: OnItemSelectedListener)

Но для строки ниже я получаю эту ошибку. Итак, я не знаю, как это настроить, как я пытаюсь сделать ниже?

spinner.OnItemSelectedListener = spinnerItemClick;


Полный код:

 void createSpinner()
        {
            Android.Content.Context context = ApplicationContext;
            Spinner spinner = new Spinner(context);
            spinner.Clickable = true;
            spinner.OnItemSelectedListener = spinnerItemClick;


            Adapter1 adapter1; List<String> list1 = new List<String>(); list1.Add("Hello1"); list1.Add("Hello2"); list1.Add("Hello3");
            adapter1 = new Adapter1(this, Android.Resource.Layout.SimpleListItem1, list1, this, "1");
            spinner.Adapter = adapter1;
        }
        void spinnerItemClick(object sender, AdapterView.IOnItemClickListener e)
        {
            //Here how to get the item that is clicked?
        }


Я также попытался выполнить приведенный ниже код, но, как видно, мой компилятор подчеркивает многое красным. Поэтому я не уверен, почему это происходит:
(Думаю, проще всего показать здесь изображение)
 введите описание изображения здесь


Spinner не содержит определения для 'setOnItemSelectedListener' и не может быть найден метод расширения 'setOnItemSelectedListener', принимающий первый аргумент типа 'Spinner' (отсутствует ли у вас директива using или ссылка на сборку.

Имя имя '@Override' не существует в текущем контексте


person Andreas    schedule 03.11.2019    source источник
comment
Я думаю, вы импортировали неправильный файл счетчика, поэтому сначала удалите импортированный файл счетчика, а затем импортируйте другой   -  person kam1234    schedule 03.11.2019
comment
проверьте эту ссылку stackoverflow.com/a/16582509/12034846   -  person kam1234    schedule 03.11.2019
comment
@override - это синтаксис Java, а не С #   -  person Jason    schedule 03.11.2019


Ответы (1)


Когда я искал в Google Xamarin выбранный элемент. На самом деле я нашел ответ, который дает индекс позиции в счетчике следующим образом:

            spinner.ItemSelected += (sender, args) =>
            {
                //args.Position gives the index in the list
            };

person Andreas    schedule 03.11.2019