Я долго размышлял над тем, почему это происходит, и понятия не имею.Если вы запускаете следующий код:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy|HH:mm"];
NSDate *date = [formatter dateFromString:@"18-01-2011|06:00"];
NSDate *today = [[NSDate alloc] init];
NSLog(@"date is: %@, today is %@", date, today);
Если пользователь настроил 24-часовые часы, на приведенных выше рисунках выдается date is: 2011-01-18 11:00:00 +0000, today is 2011-01-19 00:56:56 +0000
.Однако, когда пользователь выбирает 12-часовые часы, на приведенном выше изображении выводится date is: (null), today is 2011-01-19 12:58:51 a.m. +0000
.
Что я делаю не так?Разве formatter
не считается независимым от локали?пожалуйста, помогите!