【Swift備忘録】UIDatePickerで期間を決めてカレンダーを表示
日付の選択はカレンダーを表示する方が見やすいので、最近はカレンダーを表示しています。
1年前から1年後までとかもできるようです。
// UIDatePickerの生成
datePicker = UIDatePicker()
datePicker.translatesAutoresizingMaskIntoConstraints = false
datePicker.datePickerMode = .date // 日付のみの選択
addSubview(datePicker)
// 現在の日付を取得
let currentDate = Date()
// 1年前の日付を計算
let oneYearAgo = Calendar.current.date(byAdding: .year, value: -1, to: currentDate)
// 1年後の日付を計算
let oneYearLater = Calendar.current.date(byAdding: .year, value: 1, to: currentDate)
// 過去1年間から1年後までの日付のみを選択可能にする
datePicker.minimumDate = oneYearAgo
datePicker.maximumDate = oneYearLater
ただ、UIDatePickerだと最初に日付をタップするとカレンダーが表示される仕様らしく、UIを検討する必要あり、、です。