Я просто хочу узнать, установил ли пользователь iPhone в 12-часовой режим для отображения времени.
Класс NSLocale
, казалось, описывал (в неопределенных неопределенных терминах без каких-либо примеров или явно полезных методов) то, что я преследовал.
Итак, я создал несколько NSLocale
объектов примерно так:
NSLocale *systemLocaleApparently = [NSLocale systemLocale];
NSLocale *currentLocaleWithLotsOfGoodies = [NSLocale autoupdatingCurrentLocale];
Когда я проверяю эти объекты с помощью отладчика или NSLog()
, лучшее, что я могу получить, это что-то вроде этого:
<CFLocale 0x1278e0 [0x382084f8]>{type = system, identifier = ''}
В текущей локали есть строка идентификатора, но больше ничего.
Из документации я могу искать значения из локали, и одним из них является NSCalendar
объект. Так что я получаю это назад и смотрю на это, и оно говорит мне, что это «григорианский».
Все это, по-видимому, полезно кому-то ... но что мне действительно нужно, так это хороший большой словарь атрибутов, показывающий все действительные системные свойства, главным образом, чтобы мой NSDateFormatters
не взрывался при пользователь выбирает 12-часовой формат, даже если я заставил форматеры использовать en_US_POSIX
языковой стандарт и фиксированный setDate
формат.
(я уверен, NSCalendarDate
никогда не имел таких проблем ...)
Надеюсь, я упускаю что-то вопиющее (и, вероятно, неловко) очевидное, но, возможно, кто-то вроде бы поделится этим со мной. Пожалуйста:)