У меня есть таинственный сбой при попытке запустить приложение на iPhone (он отлично работает на Simulator, хотя). Я думаю, что проблема в этом 2 способами ..:Crash with DatePicker и NSDate
-(void)viewWillAppear:(BOOL)animated{
[self getValueFromPicker];
}
-(void)getValueFromPicker{
NSDate *now = [NSDate date];
NSDate *birthDate = self.birthdayPicker.date;
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *components = [calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit
fromDate:now
toDate:birthDate
options:0];
NSLog(@"Difference in years %i/", components.year);
}
App аварии с SIGABRT ошибка, и есть текст, который я могу видеть в консоли: Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: date'
Пожалуйста, помогите мне, i'am действительно не знаю, что я сделал неправильно, когда я сделал то же самое на Simulator в консоли, я вижу разницу в годах от Now date and date, пользователь выбрал.
Обновление: после того как я удален [self defaultBirthdayPickerDate]; в разделе viewDidLoad он начинает работать. Но теперь сборщик показывают текущую дату, это не очень удобно для выбора даты рождения, теперь я по-прежнему необходимо изменить текущую дату теперь в прошлое ..
Подключена ли выходная точка выходного сигнала? –
Да .. @property (сильный, неатомный) IBOutlet UIDatePicker * birthdayPicker; Как я уже сказал, это работает на симуляторе и аварии на устройстве. Какая черная магия? –
запишите оба значения и проверьте вывод –