Example #1
0
        async void CustomPickerButtonTapped(object sender, EventArgs e)
        {
            //Create custom data source
            var customDatesList = new List <string>();

            foreach (var date in _customDates)
            {
                customDatesList.Add(date.ToString("ddd, MMM dd, yyyy"));
            }

            //Create the modal picker and style it as you see fit
            var modalPicker = new ModalPickerViewController(ModalPickerType.Custom, "Select A Date", this)
            {
                HeaderBackgroundColor  = UIColor.Blue,
                HeaderTextColor        = UIColor.White,
                TransitioningDelegate  = new ModalPickerTransitionDelegate(),
                ModalPresentationStyle = UIModalPresentationStyle.Custom
            };

            //Create the model for the Picker View
            modalPicker.PickerView.Model = new CustomPickerModel(customDatesList);

            //On an item is selected, update our label with the selected item.
            modalPicker.OnModalPickerDismissed += (s, ea) =>
            {
                var index = modalPicker.PickerView.SelectedRowInComponent(0);
                PickedLabel.Text = customDatesList[index];
            };

            await PresentViewControllerAsync(modalPicker, true);
        }
        async void DateTimePikerFechafin(object sender, EventArgs e)
        {
            var modalPicker = new ModalPickerViewController(ModalPickerType.Date, "Elije Fecha", this)
            {
                HeaderBackgroundColor  = UIColor.Red,
                HeaderTextColor        = UIColor.White,
                TransitioningDelegate  = new ModalPickerTransitionDelegate(),
                ModalPresentationStyle = UIModalPresentationStyle.Custom
            };

            modalPicker.DatePicker.Mode = UIDatePickerMode.DateAndTime;

            modalPicker.OnModalPickerDismissed += (s, ea) =>
            {
                var dateFormatterFecha = new NSDateFormatter()
                {
                    DateFormat = "yyyy-MM-dd"
                };
                var dateFormatterHora = new NSDateFormatter()
                {
                    DateFormat = "HH:mm:ss"
                };

                NSLocale locale = NSLocale.FromLocaleIdentifier("es_MX");
                dateFormatterFecha.Locale = locale;
                dateFormatterHora.Locale  = locale;

                txtFinal.Text = dateFormatterFecha.ToString(modalPicker.DatePicker.Date) + " " + dateFormatterHora.ToString(modalPicker.DatePicker.Date);
            };

            await PresentViewControllerAsync(modalPicker, true);
        }
Example #3
0
        bool OnTextFieldShouldBeginEditing(UITextField textField)
        {
            var modalPicker = new ModalPickerViewController(ModalPickerType.Date, "Select A Date", this)
            {
                HeaderBackgroundColor = UIColor.Red,
                HeaderTextColor = UIColor.White,
                TransitioningDelegate = new ModalPickerTransitionDelegate(),
                ModalPresentationStyle = UIModalPresentationStyle.Custom
            };

            modalPicker.DatePicker.Mode = UIDatePickerMode.Date;

            modalPicker.OnModalPickerDismissed += (s, ea) => 
            {
                var dateFormatter = new NSDateFormatter()
                {
                    DateFormat = "MMMM dd, yyyy"
                };

                textField.Text = dateFormatter.ToString(modalPicker.DatePicker.Date);
            };

            PresentViewController(modalPicker, true, null);

            return false;
        }
Example #4
0
        async void DatePickerButtonTapped(object sender, EventArgs e)
        {
            var modalPicker = new ModalPickerViewController(ModalPickerType.Date, "Elije una Fecha", this)
            {
                HeaderBackgroundColor  = UIColor.Red,
                HeaderTextColor        = UIColor.White,
                TransitioningDelegate  = new ModalPickerTransitionDelegate(),
                ModalPresentationStyle = UIModalPresentationStyle.Custom
            };

            modalPicker.DatePicker.Mode = UIDatePickerMode.Date;

            modalPicker.OnModalPickerDismissed += (s, ea) =>
            {
                var dateFormatter = new NSDateFormatter()
                {
                    DateFormat = "yyyy-MM-dd"
                };

                NSLocale locale = NSLocale.FromLocaleIdentifier("es_MX");
                dateFormatter.Locale  = locale;
                txtRequeridaPara.Text = dateFormatter.ToString(modalPicker.DatePicker.Date);
            };

            await PresentViewControllerAsync(modalPicker, true);
        }
        protected override ModalEditViewController CreateModalEditViewController(UIViewController parent)
        {
            var modalPicker = new ModalPickerViewController(HeaderText, parent);

            if (Components != null)
            {
                _pickerViewModel = new BareUISimplePickerWithMultipleComponentsViewModel(modalPicker.PickerView)
                {
                    Collections = Components
                };
            }
            else if (ItemToViewConverter != null || ItemsSource.OfType <UIView>().Any())
            {
                _pickerViewModel = new BareUICustomPickerViewModel(modalPicker.PickerView)
                {
                    ItemToViewConverter = ItemToViewConverter,
                    ItemsSource         = ItemsSource
                };
            }
            else
            {
                _pickerViewModel = new BareUISimplePickerViewModel(modalPicker.PickerView)
                {
                    ItemsSource = ItemsSource
                };
            }
            modalPicker.PickerView.Model = _pickerViewModel;
            return(modalPicker);
        }
        public static async Task SetTime(this UITextField lbl, UIViewController controller,
                                         UIDatePickerMode mode = UIDatePickerMode.Date, string format = "dd.MM.yyyy",
                                         Action <UITextField, string> actionNew = default(Action <UITextField, string>), bool setIntern = false)
        {
            var modalPicker = new ModalPickerViewController(ModalPickerType.Date, "", controller)
            {
                HeaderBackgroundColor  = UIColor.Gray,
                HeaderTextColor        = UIColor.White,
                TransitioningDelegate  = new ModalPickerTransitionDelegate(),
                ModalPresentationStyle = UIModalPresentationStyle.Custom,
                DatePicker             = { Mode = mode }
            };


            if (setIntern)
            {
                modalPicker.DatePicker.Date = NSDate.Now.AddSeconds(3600);
            }

            modalPicker.OnModalPickerDismissed += (s, ea) =>
            {
                var dateFormatter = new NSDateFormatter
                {
                    DateFormat = format
                };

                if (!setIntern)
                {
                    lbl.Text = dateFormatter.ToString(modalPicker.DatePicker.Date);
                }
                actionNew?.Invoke(lbl, dateFormatter.ToString(modalPicker.DatePicker.Date));
            };

            await controller.PresentViewControllerAsync(modalPicker, true);
        }
#pragma warning disable RECS0165 // Asynchronous methods should return a Task instead of void
        public static async void SetTime(this UITextField txt, UIViewController controller,
                                         UIDatePickerMode mode = UIDatePickerMode.Date, string format = "dd.MM.yyyy")
#pragma warning restore RECS0165 // Asynchronous methods should return a Task instead of void
        {
            var modalPicker = new ModalPickerViewController(ModalPickerType.Date, "", controller)
            {
                HeaderBackgroundColor  = UIColor.Gray,
                HeaderTextColor        = UIColor.White,
                TransitioningDelegate  = new ModalPickerTransitionDelegate(),
                ModalPresentationStyle = UIModalPresentationStyle.Custom,
                DatePicker             = { Mode = mode }
            };


            modalPicker.OnModalPickerDismissed += (s, ea) =>
            {
                var dateFormatter = new NSDateFormatter
                {
                    DateFormat = format
                };

                txt.Text = dateFormatter.ToString(modalPicker.DatePicker.Date);
            };

            await controller.PresentViewControllerAsync(modalPicker, true);
        }
Example #8
0
        async void DatePickerButtonTapped(object sender, EventArgs e)
        {
            var modalPicker = new ModalPickerViewController(ModalPickerType.Date, "Select A Date", this)
            {
                HeaderBackgroundColor  = UIColor.Red,
                HeaderTextColor        = UIColor.White,
                TransitioningDelegate  = new ModalPickerTransitionDelegate(),
                ModalPresentationStyle = UIModalPresentationStyle.Custom
            };

            modalPicker.DatePicker.Mode = UIDatePickerMode.Date;

            modalPicker.OnModalPickerDismissed += (s, ea) =>
            {
                var dateFormatter = new NSDateFormatter()
                {
                    DateFormat = "MMMM dd, yyyy"
                };

                PickedLabel.Text = dateFormatter.ToString(modalPicker.DatePicker.Date);
            };

            await PresentViewControllerAsync(modalPicker, true);
        }