【SwiftUI】DatePickerの日本表記への対応

この記事は約2分で読めます。
iOS13.0以上
XCode(当サイトの環境)15.0.1

DatePickerを実装する際の日本表記への変更を紹介しています。
以下のようなコードでDatePickerを実装すると英語圏の表記となります。

例えば日付は、月、日、年の並び順になっています。

import SwiftUI

struct DateSample: View {
    // Date()で現在の日時を取得
    @State private var dateTime = Date()
    
    // 日付の範囲を定義
    var body: some View {
        DatePicker(
            "日時",   // ラベルを表示
            selection: $dateTime // 日時を格納している変数
        )
    }
}

年月日の順に表示する

DatePickerを含むViewに『.environment(\.locale, Locale(identifier: “ja_JP”))』を付与すると日本語表記になります。

import SwiftUI

struct DateSample: View {
    // Date()で現在の日時を取得
    @State private var dateTime = Date()
    
    // 日付の範囲を定義
    var body: some View {
        DatePicker(
            "日時",   // ラベルを表示
            selection: $dateTime // 日時を格納している変数
        )
        .environment(\.locale, Locale(identifier: "ja_JP"))
    }
}

和暦の表記に変更する

上記のプログラムに以下のコードを追加するだけです。

.environment(\.calendar, Calendar(identifier: .japanese))
タイトルとURLをコピーしました