コード例 #1
0
        public virtual async Task <string> DisplayActionSheetAsync(string title, string cancelButton, string destroyButton, params string[] otherButtons)
        {
            List <IActionSheetButton> buttons = new List <IActionSheetButton>();
            string result = null;

            if (!string.IsNullOrWhiteSpace(cancelButton))
            {
                buttons.Add(ActionSheetButton.CreateCancelButton(cancelButton, SetResult, cancelButton));
            }

            if (!string.IsNullOrWhiteSpace(destroyButton))
            {
                buttons.Add(ActionSheetButton.CreateDestroyButton(destroyButton, SetResult, destroyButton));
            }

            foreach (var button in otherButtons)
            {
                buttons.Add(ActionSheetButton.CreateButton(button, SetResult, button));
            }

            void SetResult(string s) => result = s;

            var request = new ActionSheetRequest
            {
                Title   = title,
                Buttons = buttons
            };

            await DisplayActionSheetAsync(request);

            return(result);
        }
コード例 #2
0
        public async Task DisplayActionSheetAsync(ActionSheetRequest request)
        {
            var page = _popupDialogFactory.GetActionSheet(request);

            await DisplayActionSheetAsync(page, request.Animated ?? true);
        }
コード例 #3
0
 public ActionSheetPageBase GetActionSheet(ActionSheetRequest request) =>
 ActionSheetPage.CreatePage(request);