试图在android中创建spinner.OnItemSelectedListener事件

问题描述 投票:0回答:1

我已经成功创建了一个Spinner,其中包含以下项目:Hello1,Hello2和Hello3。现在,我尝试创建一个“ OnItemSelectedListener”事件,以便在单击某个项目时尝试在“ spinnerItemClick”事件中捕获该项目。(我有一个自定义适配器,但问题将集中在:OnItemSelectedListener)

但是对于下面的行,我得到了这个错误。所以我不确定在尝试以下操作时该如何设置?

spinner.OnItemSelectedListener = spinnerItemClick;

enter image description here

完整的代码:

 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?
        }
android spinner onitemselectedlistener
1个回答
0
投票

您传递了一个OnItemClickListener而不是OnItemSelectedListener。另外,您应该使用setter方法。最后,它需要一个内部类,该内部类将覆盖click / select事件,而不是方法。试试这个,我希望它能解决问题:

spinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                //Use a switch statement here to go through all the positions.
            }
        });
© www.soinside.com 2019 - 2024. All rights reserved.