Как реализовать выбор даты в iOS-приложении

Добавим свойство eventDate к DetailViewController.

#import <UIKit/UIKit.h>

@interface DetailViewController : UIViewController

@property (strong, nonatomic) NSDate *eventDate;

@end


Установим минимальное значение для UIDatePicker чтобы исключить возможность установить прошедшее время для события, потому что нельзя слать уведомление в прошлое (если конечно у вас нет машины времени).


- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    
    self.datePicker.minimumDate = [NSDate date];
    [self.datePicker addTarget:self
                        action:@selector(datePickerValueChanged)
              forControlEvents:UIControlEventValueChanged];
    
    [self.buttonSave addTarget:self
                        action:@selector(save)
              forControlEvents:UIControlEventTouchUpInside];
    
    UITapGestureRecognizer *handleTap = [[UITapGestureRecognizer alloc] initWithTarget:self
        action:@selector(handleEndEditing)];
    [self.view addGestureRecognizer:handleTap];
}

- (void)datePickerValueChanged
{
    // метод, который будет вызываться при прокручивании UIDatePicker
    
    self.eventDate = self.datePicker.date;
    NSLog(@"date Picker %@", self.eventDate);
}

Итоги: