2013-03-16 2 views
2

Я хочу показать дату следующим образом: будний день 7 месяцев. Я сделал это, и у меня есть правильный синтаксис.Изменить язык для NSDate день недели и месяц

NSDateFormatter* df = [[NSDateFormatter alloc] init]; 
[df setDateFormat:@"EEEE dd MMMM"]; 
[df setTimeZone:[NSTimeZone localTimeZone]]; 

Результаты зарегистрированы: суббота, 16 марта. Я просто хочу иметь французскую дату, а не английскую. Я пытаюсь установить местный часовой пояс, но ничего не меняет. У вас есть идея, как это сделать?

ответ

2

Вы устанавливаете языковой стандарт форматирования даты, используя соответствующий объект NSLocale.

Кроме того, будьте осторожны с форматами даты с жестким кодированием. Вашим пользователям может не понравиться видеть даты в этом формате, поэтому сначала вы должны запустить строку формата через +[NSDateFormatter dateFormatFromTemplate:options:locale:]. Сессия WWDC 2012 «Советы по интернационализации &« Трюки »имели кучу полезной информации об этом.

6

Инициализировать локаль с использованием идентификатора. вы можете получить все доступные идентификаторы из

[NSLocale availableLocaleIdentifiers]; 

я считаю, @ «fr_BI» является одним из французских идентификаторов

NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"fr_BI"]; 
[dateFormatter setLocale:locale]; 
Смежные вопросы