Ho, чтобы получить символы месяца / дня недели из NSDateFormatter на текущем языке (iPhone)

В частности, меня интересуют shortStandaloneWeekdaySymbols. Я использую этот код:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSArray *shortWeekdaySymbols = [dateFormatter shortStandaloneWeekdaySymbols];

Но если формат региона iPhone установлен на США, а язык - на французский / немецкий / любой другой, NSDateFormatter возвращает английские строки (пн вт ...). Но я хочу соблюдать языковые настройки и получать названия дней недели на текущем языке (например, стандартное приложение Clock делает это). Это возможно?

Единственный способ, который я могу придумать для этого, - это получить текущий язык пользователя (как?) И установить локаль в средстве форматирования даты на регион этого языка.


person Indoor    schedule 23.03.2010    source источник
comment
Что плохого в простом соблюдении формата региона? В любом случае это то, что делают стандартные приложения.   -  person Mihai Damian    schedule 19.05.2010
comment
Как указано в исходном вопросе: например, стандартное приложение Clock делает это.   -  person Indoor    schedule 04.02.2011


Ответы (2)


Попробуйте посмотреть здесь Определение текущего языка ввода iPhone

person tt.Kilew    schedule 19.05.2010

Единственный способ, о котором вы можете думать, - «получить текущий язык пользователя (как?) И установить локаль в средстве форматирования даты на регион этого языка». Вот как.

[dateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:[[NSLocale preferredLanguages] objectAtIndex:0]] autorelease]];
person Alex Curylo    schedule 16.02.2011
comment
[dateFormatter setLocale: [NSLocale currentLocale]]; - person delta2flat; 22.03.2017