//IASMultiSelectActionSheetDelegate public void ActionSheetPressedButtonAtIndex(ASMultiSelectActionSheet.ASMultiSelectActionSheet actionSheet, NSIndexPath index, ASMultiSelectActionSheetButton sender) { if (actionSheet != null) { if (sender.Style == ASMultiSelectActionSheetButtonStyle.Cancel) { //TODO Perform any cancellation activities here actionSheet.DismissAnimated(true); return; } else if (sender.Style == ASMultiSelectActionSheetButtonStyle.PerformAction) { //TODO Do whatever you need to when PerformAction button is tapped. // Button.data is an object so use it in whatever way you need. List <TestItem> items = actionSheet.Sections?.ElementAt(0)?.Buttons? .Where(b => b.Style == ASMultiSelectActionSheetButtonStyle.MultiSelect && b.Selected) .Select(b => (TestItem)b.Data).ToList(); Action <List <TestItem> > command = (Action <List <TestItem> >)sender.Data; command.Invoke(items); } actionSheet.DismissAnimated(true); } return; }
private void DisplayBasicFunctionality(object sender, EventArgs e) { var buttons = DemoData.Select(o => new Tuple <string, object>(o.Text, o)).ToList(); if (buttons == null || !buttons.Any()) { return; } //The receiver of this action is an object; you can use whatever you need here or nothing at all Action <List <TestItem> > goAction = (items) => PerformGoAction(items); var optionsSection = new ASMultiSelectActionSheetSection("Multi Select", "Choose Your Options", buttons, ASMultiSelectActionSheetButtonStyle.MultiSelect, "GO!", goAction); if (optionsSection == null) { return; } var alertSheet = new ASMultiSelectActionSheet.ASMultiSelectActionSheet(new List <ASMultiSelectActionSheetSection> { optionsSection }, this); var vc = _app.PresentedViewController(); alertSheet.ShowInView(vc.View, true); }
public void ActionSheetWillPresent(ASMultiSelectActionSheet.ASMultiSelectActionSheet actionSheet) { return; }
public void ActionSheetWillDismiss(ASMultiSelectActionSheet.ASMultiSelectActionSheet actionSheet) { return; }