iOS 12 метод stringFromDate возвращает неверное значение - PullRequest
0 голосов
/ 23 октября 2018

В iOS 12 я заметил, что метод [NSDateFormatter stringFromDate] возвращает неверное значение на симуляторе iPad, но правильное значение на физическом iPad.

Пример кода:

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"c"];

NSDate *currentDate = [NSDate date];
// Returns correct value on both physical and simulator iPads (eg. Fri Oct 19 15:39:53 2018)

NSString *currentDateAsString = [dateFormat stringFromDate:currentDate];
// Physical iPad: 5 (correct)
// Simulator iPad: 6 (incorrect)

Оба iPad имеют одинаковые настройки даты / времени (например, один и тот же часовой пояс).В чем причина этой ошибки?

1 Ответ

0 голосов
/ 23 октября 2018

Проверьте первый день недели на своем реальном и симуляторе iPad, чтобы увидеть, совпадают ли они:

NSCalendar.current.firstWeekday

и учтите это значение в своих расчетах в будний день.взято из форматера даты.

Первый день недели в iOS зависит от настроек региона.Дважды проверьте настройки в меню «Настройки» -> «Основные» -> «Язык и регион» -> «Регион» на реальных и симуляторных iPad.Также, возможно, стоит проверить первый день недели на вашем Mac в Системных настройках -> Язык и регион -> Первый день недели.

...