私は24時間形式で作成された日付時刻としてレコードがデータベースに格納されるいくつかの詳細を追加するたびに、アプリケーションを開発しています。しかし、私は12時間形式で時間を表示している表示目的のために。時間を表示するために "dd-MMM-yyyy hh:mm a"形式を使用していて、画面に正しく表示されますが、ユーザーが日付/時刻形式を12時間から24時間形式に変更するたびに問題が発生します。私のアプリは24時間形式で時刻を表示し始めます。誰でも設定を24時間形式に設定を変更しても、私はそれを助けることができますplz。時間形式は12から24時間に変更しないでください。どのように表示する12時間の形式で時間iphoneで
答えて
一般に、ユーザーが表示方法を選択できるようにする必要があります。あなたのコードで
、あなたがこれを行うことができるようになります。
dateFormat = [[[NSDateFormatter alloc] init] autorelease];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSLocale *twelveHourLocale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] autorelease];
dateFormat.locale = twelveHourLocale;
CreatedDate = [dateFormat dateFromString:[NSString stringWithFormat:@"%@",[serviceAntInstance.arr_CreatedDate objectAtIndex:indexPath.row]]];
[dateFormat setDateFormat:@"dd-MMM-yyyy hh:mm a"];
createdDateConvert = [dateFormat stringFromDate:CreatedDate];
ここでは、日付形式を別の形式に変換するためにdatetime形式を変換するかどうかを指定します*/ dateFormat = [[[NSDateFormatter alloc] init] autorelease]; [dateFormat setDateFormat:@ "yyyy-MM-dd HH:mm:ss"]; CreatedDate = [dateFormat dateFromString:[NSString stringWithFormat:@ "%@"、[serviceAntInstance.arr_CreatedDate objectAtIndex:indexPath.row]]]; [dateFormat setDateFormat:@ "dd-MMM-yyyy hh:mm a"]; createdDateConvert = [dateFormat stringFromDate:CreatedDate]; –
ユーザーのロケールに時刻形式が指定されています。それは好ましい設定であり、あなたのアプリケーションは、ユーザがそれを知覚することが便利でなければならないように、日付情報をそのような方法で提示すべきである。したがって、一般的に、フォーマットを12時間に変更しないでください。 –
12時間形式を使用するロケールを強制する方法を示すために、回答を編集しました。これはアップルのドキュメントからです:https://developer.apple.com/library/ios/#qa/qa2010/qa1480.html – rosslebeau
はチェックしてみて下さい。この:
NSDateFormatter *formatterTemp = [[NSDateFormatter alloc] init];
[formatterTemp setLocale:[NSLocale currentLocale]];
[formatterTemp setDateStyle:NSDateFormatterNoStyle];
[formatterTemp setTimeStyle:NSDateFormatterShortStyle];
[formatter setDateFormat:@"MM/dd/yyyy hh:mm a"];
NSString *dateString = [formatter stringFromDate:[NSDate date]];
NSRange amRange = [dateString rangeOfString:[formatterTemp AMSymbol]];
NSRange pmRange = [dateString rangeOfString:[formatterTemp PMSymbol]];
BOOL is24h = (amRange.location == NSNotFound && pmRange.location == NSNotFound);
[formatterTemp release];
NSLog(@"%@\n",(is24h ? @"YES" : @"NO"));
どのように既存のロケールを活用してはどうですか?
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier: @"en_US"];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setLocale: locale];
[formatter setTimeStyle: NSDateFormatterShortStyle];
NSString *result = [formatter stringFromDate: [NSDate date]];
[formatter release];
[locale release];
- 1. hh:mm aa(12時間形式)HH:mm(24時間形式)で変換
- 2. Rubyで12時間24時間形式に変換する
- 3. 現在の時間(hh:mm)から12時間の形式の最後の5時間をハイチャートで表示するにはどうすればよいですか?
- 4. 時刻をSQLで12時間形式に変換する
- 5. SQLの時刻を12時間形式に変換する
- 6. 日付ピッカー12時間形式android
- 7. NSDateComponentの時間は12または24h形式ですか?
- 8. SQL Server 2008で12時間形式を指定する方法
- 9. この「P16DT1H58M47S」はどのような時間形式ですか?
- 10. セクションは12時間形式でインデックスされます
- 11. 時間の書式設定MYSQLの12時間クロック
- 12. Javaで秒から日付と時刻(12時間形式)を表示する方法
- 13. デジタル時計の形式で時間を表示するphp関数
- 14. 時間入力などの時間形式のシフト、出力
- 15. PHPで12時間から24時間の間にどのように変換しますか?
- 16. WP7 TimePicker時間を24時間形式で選択する
- 17. UNIXでの24時間形式の印刷時間
- 18. GMTの時間をアンドロイドの12時間形式のISTに変換するにはどうすればよいですか?
- 19. タイマーの表示時間を次の形式で表示します
- 20. 時間フォーマットが12時間または24時間のフォーマットであるかどうかを検出する
- 21. SmartGWT DateTimeItem:12時間形式を受け入れる
- 22. 12時間
- 23. Javaで24時間を12時間に変換する
- 24. iphone - 時間(アプリの非表示)と時間(アプリが表示される)の差
- 25. 12時間形式で2倍の変数を比較する方法
- 26. 現在のロケールがPHPで24時間または12時間の時刻形式を持っているかどうかを調べる方法は?
- 27. 24時間から12時間に変換するにはどうすればよいですか?
- 28. データベースからの日付を使用してjavaで24時間の時間を12時間形式に変換する方法
- 29. 24時間/ 12時間の時計の問題
- 30. Google Chartsで日時データの24時間形式に変更
ユーザーが時間形式を12時間から24時間に変更した場合、それはその方法が好きなからです。ユーザーの選択を尊重する必要があります。 – JeremyP