Как я могу определить, настроен ли iPhone на 12-часовой или 24-часовой показ времени?
Я думал, что видел что-то, отвечающее на это недавно, но теперь я не могу найти это. Вот код, который я использую сейчас, чтобы определить, установлены ли настройки для отображения времени 24 часа. Это работает для меня в США, но я не знаю, будет ли это работать во всех регионах. Это достаточно или есть лучший способ узнать текущие настройки для этого?
+(BOOL) use24HourClock
{
BOOL using24HourClock = NO;
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setLocale: [NSLocale currentLocale]];
[dateFormatter setDateStyle:kCFDateFormatterNoStyle];
[dateFormatter setTimeStyle:kCFDateFormatterShortStyle];
// get date/time (1Jan2001 0000UTC)
NSDate* midnight = [[NSDate alloc] initWithTimeIntervalSinceReferenceDate:0];
NSString* dateString = [dateFormatter stringFromDate: midnight];
// dateString will either be "15:00" or "16:00" (depending on DST) or
// it will be "4:00 PM" or "3:00 PM" (depending on DST)
using24HourClock = ([dateString length] == 5);
[midnight release];
[dateFormatter release];
return using24HourClock;
}