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); }
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; }
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); }
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); }