У меня есть экземпляр datePicker
, который связан с IBOutlet
.NSDatePicker возвращает дату по умолчанию, даже если дата задана программно
@interface SomeClass() {
__weak IBOutlet UIDatePicker *datePicker;
}
Теперь в моем awakeFromNib
методе я устанавливаю minimumDate
, maximumDate
и date
недвижимость
- (void)awakeFromNib {
[datePicker setMinimumDate:[[NSDate date] dateByAddingTimeInterval:60*10]];
[datePicker setMaximumDate:[[NSDate date] dateByAddingTimeInterval:60*60*24*10]];
[datePicker setDate:datePicker.minimumDate];
NSLog(@"%@", datePicker.date);
//Logs Correct Value
}
При входе datePicker.date
после установки его в awakeFromNib
метод, он дает правильное значение. До сих пор так хорошо.
Теперь, когда я пытаюсь получить значение даты после инициализации представления, например, при событии нажатия кнопки, оно дает мне значение по умолчанию, которое является текущим значением даты.
- (IBAction)aButtonTouchUpInsideEvent:(UIButton *)button {
NSLog(@"%@", datePicker.date);
//Logs [NSDate date] value
}
Я хочу знать, почему он не дает мне значение, которое я поставил в awakeFromNib
методе. Я попытался найти эту проблему, но не повезло.
Почему awakeFromNib вместо viewDidLoad? – Sanandrea
@ САРРИ и что делегат? Согласно документации Apple и UIKit Framework, для UIDatePicker нет делегата. –
@ Sanandrea, потому что это UIView, а не UIViewController –