iOS NSDate Сравнение работает иначе, когда 24-часовое время в настройках даты переключается между ON и OFF?
Команда, я сравниваю дату, которая сформирована из строки, используя NSDateFormatter, с системной датой iOS. Приведенный ниже оператор возвращает значение true, если для системных настроек времени и времени установлено 24-часовое время ВКЛ, но тот же код возвращает значение false, когда 24-часовое время отключено.
Проблемный код:
if ([(NSDate*)[NSDate date] compare:currDate] == NSOrderedAscending) {
// -- Code -- This is executed only when the 4-Hour Time ON
}
Я сбит с толку. Строка, с помощью которой я получаю дату в 24-часовом формате. Это проблема? Или что-нибудь еще?
Код форматирования даты:
-(NSDate *)getDateFromString:(NSString *)dateString{
NSDateFormatter* fmt = [[NSDateFormatter alloc] init];
[fmt setDateFormat:@"dd MMM yyyy hh:mm:ss"];
[fmt setTimeZone:[NSTimeZone systemTimeZone]];
[fmt setFormatterBehavior:NSDateFormatterBehaviorDefault];
return [fmt dateFromString:dateString];
}