StatusBar
将禁用将来的日期 我只想限制将来的年份。用户可以选择将来的月份和日期。 如何做到。任何帮助将不胜感激。
预先感谢
答案 0 :(得分:2)
我相信这就是您想要的:
let picker = UIDatePicker()
let calendar = Calendar.current
let currentYear = calendar.component(.year, from: Date())
guard let maximumDate = calendar.date(from: DateComponents(year: currentYear + 1))?.addingTimeInterval(-1) else {
fatalError("Couldn't get next year")
}
picker.maximumDate = maximumDate
print(picker.maximumDate ?? "")
在日期选择器中,最大日期应为December 31st, 2018 at 23:59:59
。
答案 1 :(得分:1)
您可以将UIDatePicker
限制为仅允许当年的将来日期,可以构造与明年年初相对应的Date
对象,并将其用作maximumDate
。
let thisYear = Calendar.current.component(.year, from: Date())
datePicker.maximumDate = Calendar.current.date(from: DateComponents(year: thisYear+1))
答案 2 :(得分:1)
获取当前日期并从中提取年份。 (使用日历功能date(from:)
。)为该年12月31日创建DateComponents。使用它来创建一个日期。使日期选择器的最大日期。这样一来,用户就可以选择当年的任何日期,而不提前选择年份。