時刻形式が 12 時間/24 時間形式であることを検出しようとしています。それに基づいて、カレンダーで時間を設定しています。
次のコードを使用して、viewDidLoad メソッドでデバイスの 24 時間形式を検出しました。
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setLocale:[NSLocale currentLocale]];
[formatter setDateStyle:NSDateFormatterNoStyle];
[formatter setTimeStyle:NSDateFormatterShortStyle];
NSString *dateString = [formatter stringFromDate:[NSDate date]];
NSRange amRange = [dateString rangeOfString:[formatter AMSymbol]];
NSRange pmRange = [dateString rangeOfString:[formatter PMSymbol]];
is24h = (amRange.location == NSNotFound && pmRange.location == NSNotFound);
その後、私は次のようにチェックしています
if (is24h == TRUE) {
} else {
}
しかし、私は常にis24hの値がfalseになっています。デバイスが 12 時間形式に設定されている場合、カレンダーで時刻を設定できます。ただし、24 時間形式の場合、時刻を設定できません。
どこを変更する必要があるか教えてください。