NSDateFormatter имеет разные результаты, когда iPad имеет 24-часовой формат - PullRequest
1 голос
/ 19 января 2011

Я долго размышлял над тем, почему это происходит, и понятия не имею.Если вы запускаете следующий код:

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 не считается независимым от локали?пожалуйста, помогите!

...