Вы получаете эту ошибку, потому что вы передаете объект NSDate
в dateFromString:
.
Добавьте NSLog
, и вы увидите, что:
NSString *inputString = [self.measurements objectAtIndex:indexNumber.row];
if ([inputString isKindOfClass:[NSDate class]]) {
NSLog(@"inputString is of type NSDate");
}
Также здеськак воспроизвести вашу ошибку:
NSString *inputString = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSDate *date = [dateFormatter dateFromString:inputString];
Это означает, что массив self.measurements
содержит NSDate
объектов, а не NSString
объектов.
Когда вы исправляете свой текущийпроблема, вы, вероятно, столкнетесь с новым, потому что вы не используете правильный формат даты.Для разбора строк даты типа: 2012-03-09 23:00:00 +0000
вы должны использовать следующий формат даты:
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss zz"];