Я закончил тем, что не использовал NSDate / NSDateFormatter, потому что я не мог заставить его работать должным образом. Мое решение состояло в разборе моей временной строки на часы, минуты и секунды. В конце концов я перевел все в секунды и сохранил их таким образом.
ядывался по сторонам, но не видел ничего такого, что могло бы решить эту проблему, поэтому я надеюсь, что кто-нибудь сможет помочь мне разобраться с этим. Я пытаюсь использовать переменную NSDate (в основных данных) для хранения времени, а не даты и времени, а только времени в формате ЧЧ: ММ: СС;
Посмотрев ссылку на класс NSDateFormatter и предоставленный пример кода, я смог настроить его и подумать, что мой код должен выглядеть примерно так:
NSDateFormatter *timeOfArrival = [[NSDateFormatter alloc] init];
[timeOfArrival setTimeStyle:NSDateFormatterLongStyle];
[timeOfArrival setDateStyle:NSDateFormatterNoStyle];
[timeOfArrival setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]];
NSString *etaStr = [attributeDict objectForKey:@"cumulativeTime"];
NSLog(@"%@", etaStr);
checkpoint.eta = [timeOfArrival dateFromString:etaStr];
Все до последней строки, где я пытаюсь создать свой объект NSDate из моей строки, работает, но после этого checkpoint.eta по-прежнему равен нулю.
etaStr правильно выводит мое ожидаемое значение, например, 00:14:00, но я не уверен, что делаю неправильно.