首页 > 解决方案 > 以 12 小时格式修复 UIDatePicker() 的最大和最小时间(上午到下午,下午到上午)语言 swift

问题描述

这是我的代码:

let startHour: Int = 23
let endHour: Int = 6
let date1: NSDate = NSDate()
let gregorian: NSCalendar = NSCalendar(calendarIdentifier: NSCalendar.Identifier.gregorian)!
let components: NSDateComponents = gregorian.components(([.day, .month, .year]), from: date1 as Date) as NSDateComponents
components.hour = startHour
components.minute = 0
components.second = 0
let startDate: NSDate = gregorian.date(from: components as DateComponents)! as NSDate
components.hour = endHour
components.minute = 0
components.second = 0
let endDate: NSDate = gregorian.date(from: components as DateComponents)! as NSDate
pickers.datePickerMode = .time
pickers.minimumDate = startDate as Date
pickers.maximumDate = endDate as Date
pickers.setDate(startDate as Date, animated: true)
pickers.reloadInputViews()

我正在尝试将输入时间传递为​​并startHour命名为。在这里,它通过我的输出,从晚上 11 点开始,但也允许我选择晚上 10 点。而且我不想将我的输入传递为 23 而是传递为 11 PM , 6 传递为 6 AM 。endHourUIDatePicker()pickers(pickers.minimumDate ,pickers.maximumDate)

标签: swift

解决方案


推荐阅读