Reputation: 639
I need to get the selected item off my spinner but I am getting the above error and I don't know why.
So, I am expecting to get the spinner selected item without calling the spinner's event handler, if that's possible, because I need to use it on my button click.
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
SetContentView (Resource.Layout.Main);
Button bt_ok = FindViewById<Button>(Resource.Id.bt_ok);
Spinner spinner = (Spinner)FindViewById<Spinner>(Resource.Id.dd_spinner);
//
//getSelectedItem does not contain a definition!!!
//
String spinner_text = spinner.getSelectedItem().toString();
//
//Do I need this?
//
spinner.ItemSelected += new EventHandler<AdapterView.ItemSelectedEventArgs>(spinner_ItemSelected);
var adapter = ArrayAdapter.CreateFromResource(
this, Resource.Array.planet_array, global::Android.Resource.Layout.SimpleSpinnerItem);
adapter.SetDropDownViewResource(global::Android.Resource.Layout.SimpleSpinnerDropDownItem);
spinner.Adapter = adapter;
bt_ok.Click += delegate
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.SetTitle("Confirm");
//
//I need the value here!!!
//
builder.SetMessage(new Confirm().Choice(spinner_text));
builder.SetCancelable(true);
builder.SetPositiveButton("Yes", delegate { });
builder.Show();
};
}
I tried this and this answers, but I couldn't get it working.
Upvotes: 1
Views: 182
Reputation: 74174
The Java getSelectedItem
method in Xamarin.Android
is transformed to a C# read-only property (SelectedItem
):
var spinner = FindViewById<Spinner>(Resource.Id.dd_spinner);
var selectedItem = spinner.SelectedItem;
Upvotes: 3