本文介绍了微调器OnItemSelectedListener的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我找不到如何单声道执行此操作的示例.
I can't find an example of how to do this in mono.
有帮助吗?
添加了代码
foreach (equip item in list) { tr = new TableRow(this); sp = new Spinner(this); sp.LayoutParameters = lp2; sp.Adapter = adapter; sp.ItemSelected += new EventHandler<ItemEventArgs>(spinner_ItemSelected()); sp.SetSelection(Convert.ToInt32(item.status)); tr.AddView(sp); } private void spinner_ItemSelected(object sender, ItemEventArgs e) { Spinner spinner = (Spinner)sender; string toast = string.Format ("You selected {0}", spinner.GetItemAtPosition (e.Position)); Toast.MakeText (this, toast, ToastLength.Long).Show (); } 推荐答案在Android版Mono中,许多侦听器接口已转换为C#事件,包括此事件.在这种情况下,您可以插入 ItemSelected 事件,而不必创建一个听众.Xamarin有一个使用微调器的完整示例,可在此处使用.
In Mono for Android a lot of listener interfaces have been translated to C# events, including this one. In this case you can hook into the ItemSelected event instead of having to create a listener. Xamarin has a full example of using a spinner available here.
根据您要求区分微调框值实际何时更改的请求,您可以执行以下操作:
Based on your request to differentiate when the spinner value has actually changed, you can do something like:
int initialSpinnerPosition = spinner.SelectedItemPosition; spinner.ItemSelected += (sender, args) => { if (args.Position != initialSpinnerPosition) { // do stuff } };更多推荐
微调器OnItemSelectedListener
发布评论