実行環境
Swift | 5.6.1 |
Xcode | 14.0 |
macOS | 12.6 |
内容
DateFormatterを利用して、formatを “HH:MM” にしても24時間表示できませんでした。
“08:12 PM” とかAMやPMがついてしまいました。
原因
iPhoneの端末設定が24時間表示か、12時間表示かで、”HH:MM” がそれ通り表示できるか変わってくるみたいです。
例えば、午後8時00分の場合は
24時間表示に設定している → “20:00”
12時間表示に設定している → “08:00 PM”
と表示されるみたいです。
解決策
formatterで宣言する際に、下の1行を追加させることで、
私の環境では24時間表示させることができました。
formatter.locale = NSLocale.system
理由を深く追求しようと思いましたが、僕の力では理由までは理解できませんでした。
深く気になる方は、下の公式ドキュメントをどうぞ。
>> localのApple公式ドキュメント
>> NSLocalのApple公式ドキュメント
まとめ
ということで、本記事はDateFormatterで24時間表示できない解決法をまとめました。
アドバイスや改善などあれば本記事の最後のコメント欄からお願いします。
最後まで読んでいただきありがとうございました!
作業効率がグッと上がるPC道具
リンク
リンク
間違いなしのSwift書籍2冊
リンク
リンク