У меня сейчас есть этот код, и я пытаюсь его отформатировать, добавив новую строку между ними, но она не дает мне новой строки.Я делаю это правильно?
Точка вызова -dateFormatFromTemplate:locale:options:
состоит в том, чтобы вернуть строку форматирования, которая правильно отформатирована для указанной локали.То есть метод просматривает компоненты даты, которые вы укажете, и упорядочивает их в соответствии с местным обычаем, например, «2 января 2019 года» в США, но «2 января 2019 года» в Европе.Я думаю, что он в основном игнорирует любые части шаблона, которые он не распознает как спецификатор компонента даты.Если он перемещает компоненты даты, как он узнает, где разместить не датированные части, о которых он не знает?
Если вам не нужны разные локали ипросто хотите указать дату с новой строкой, затем вы можете пропустить этот метод и просто создать строку шаблона самостоятельно:
formatString = @"EEEE \n hh:mm";
[dateFormatter setDateFormat:formatString];
NSString *dateString = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"%@", dateString);
Приведенный выше код будет записывать текущую дату с новой строкой между днем недели ивремя, поэтому -stringFromDate:
с радостью будет использовать вашу строку формата и сохранить новую строку.
Если вы делаете заботитесь о локалях , но все еще хотите новую строку, вы будетенужно либо создать свои собственные строки формата даты для конкретной локали, либо вызвать -dateFormatFromTemplate:locale:options:
, а затем вставить новую строку в нужное место в результате.