public static void Initialise(StrictlyStatsActivity context, List <Couple> couples, int spinnerId, bool addEventHandlers = true, Action ItemSelectedCallback = null) { var coupleInput = context.FindViewById <Spinner>(spinnerId); var spinnerItems = couples.Select(x => x.CoupleName).ToList(); spinnerItems.Insert(0, "Select couple"); coupleInput.Adapter = new ArrayAdapter <string>(context, Android.Resource.Layout.SimpleListItem1, spinnerItems); if (addEventHandlers) { coupleInput.ItemSelected += (sender, e) => { Spinner spinner = (Spinner)sender; var selected = spinner.GetItemAtPosition(e.Position); context.Couple = couples.FirstOrDefault(x => selected.ToString().Contains(x.CoupleName)) ?? new Couple(); ItemSelectedCallback?.Invoke(); }; } }
public static void Initialise(StrictlyStatsActivity context, List <Dance> dances, int spinnerId, bool addEventhandlers = true, Action itemSelectedCallback = null) { var danceInput = context.FindViewById <Spinner>(spinnerId); var danceNames = dances.Select(x => x.Name).ToList(); danceNames.Insert(0, "Select dance"); danceInput.Adapter = new ArrayAdapter <string>(context, Android.Resource.Layout.SimpleListItem1, danceNames); if (addEventhandlers) { danceInput.ItemSelected += (sender, e) => { Spinner spinner = (Spinner)sender; var selected = spinner.GetItemAtPosition(e.Position); context.Dance = dances.FirstOrDefault(x => x.Name == selected.ToString()) ?? new Dance(); itemSelectedCallback?.Invoke(); }; } }
public static void Initialise(StrictlyStatsActivity context, List <int> weeks, int spinnerId, bool addEventhandlers = true, Action itemSelectedCallback = null) { var weekInput = context.FindViewById <Spinner>(spinnerId); var adapter = new ArrayAdapter <int>(context, Android.Resource.Layout.SimpleListItem1, weeks); weekInput.Adapter = adapter; if (addEventhandlers) { weekInput.ItemSelected += (sender, e) => { Spinner spinner = (Spinner)sender; var selected = spinner.GetItemAtPosition(e.Position); string toast = string.Format("{0}", selected); Toast.MakeText(context, toast, ToastLength.Long).Show(); context.SelectedWeek = (int)selected; itemSelectedCallback?.Invoke(); }; } }
public static void Update(StrictlyStatsActivity context, List <Couple> couples, int spinnerId) => Initialise(context, couples, spinnerId, false);
public static void Update(StrictlyStatsActivity context, List <Dance> dances, int spinnerId) => Initialise(context, dances, spinnerId, false);
public static void Update(StrictlyStatsActivity context, List <int> weeks, int spinnerId) => Initialise(context, weeks, spinnerId, false);