바보 같은 문제에 봉착했습니다. Apple에 따르면 NSDateFormatter
인스턴스에서 locale
속성을 설정하면 예를 들어 사용자가 12 또는 24 시간 형식을 선호하는지 여부와 같은 일부 설정이 무시됩니다. 새로 생성 된 NSDateFormatter
인스턴스는 현재 로케일로 초기화됩니다. WWDC 2011 세션 117은이 12/24 시간 문제에 대해 54시에 이야기합니다. 형식이 명시 적으로 HH:mm
으로 설정되어있는 경우에도 애플의 문서와이 사용자의 기본 로케일을 출력 현재 시간을해야 WWDC 세션에 따르면현재 로캘을 기반으로 NSDateFormatter에 대한 자동 12/24 시간 서식을 얻는 방법
NSDate *date = [NSDate date];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"HH:mm"];
NSLog(@"%@",[formatter stringFromDate:date]);
: 여기 내가 사용하는 코드입니다. 그러나 어떤 이유에서인지, 나는 항상 24 시간의 표현을 얻는다. 또한 로캘을 [NSLocale autoupdatingCurrentLocale]
, [NSLocale currentLocale]
및 여러 국가 로캘로 설정하려고했습니다. 같은 결과. 어떤 아이디어?