新的 UIDatePicker 作为 inputView
New UIDatePicker as inputView
在 iOS 13 和更早版本中,我们可以将 UIDatePicker 用作 inputView,但现在呢?
我尝试使用 ios14,但在点击文本字段时没有任何附加内容。
var timePicker = UIDatePicker()
self.timePicker.preferredDatePickerStyle = UIDatePickerStyle.wheels
self.timePicker.datePickerMode = UIDatePicker.Mode.time
self.timePicker.minuteInterval = 5
self.startTimeTxtField.inputView = self.timePicker
正常吗?
var datePickerView = UIDatePicker()
if #available(iOS 14.0, *) {
datePickerView.frame = CGRect(x: 50, y: 50, width: ScreenWidth, height: 250.0)
datePickerView.preferredDatePickerStyle = .wheels
datePickerView.datePickerMode = .date
} else {
datePickerView.datePickerMode = .date
}
显然,这是目前已知的问题。解决方法是在将日期选择器指定为输入视图之前调用 sizeToFit
。
Swift
let datePicker = UIDatePicker()
datePicker.datePickerMode = .time
datePicker.locale = .current
if #available(iOS 14, *) {
datePicker.preferredDatePickerStyle = .wheels
datePicker.sizeToFit()
}
textField.inputView = datePicker
Objective-C
if (@available(iOS 14.0, *)) {
[datePicker setPreferredDatePickerStyle:UIDatePickerStyleWheels];
[datePicker setDatePickerMode:UIDatePickerModeDate]; //optional
[datePicker sizeToFit];
}
苹果forum的回答请看这里
这是我的工作
let datePicker = UIDatePicker()
datePicker.datePickerMode = .date //change the mode
datePicker.locale = .current
if #available(iOS 14, *) {
datePicker.preferredDatePickerStyle = .wheels
datePicker.sizeToFit()
}
birthdateTF.inputView = datePicker
在 iOS 13 和更早版本中,我们可以将 UIDatePicker 用作 inputView,但现在呢?
我尝试使用 ios14,但在点击文本字段时没有任何附加内容。
var timePicker = UIDatePicker()
self.timePicker.preferredDatePickerStyle = UIDatePickerStyle.wheels
self.timePicker.datePickerMode = UIDatePicker.Mode.time
self.timePicker.minuteInterval = 5
self.startTimeTxtField.inputView = self.timePicker
正常吗?
var datePickerView = UIDatePicker()
if #available(iOS 14.0, *) {
datePickerView.frame = CGRect(x: 50, y: 50, width: ScreenWidth, height: 250.0)
datePickerView.preferredDatePickerStyle = .wheels
datePickerView.datePickerMode = .date
} else {
datePickerView.datePickerMode = .date
}
显然,这是目前已知的问题。解决方法是在将日期选择器指定为输入视图之前调用 sizeToFit
。
Swift
let datePicker = UIDatePicker()
datePicker.datePickerMode = .time
datePicker.locale = .current
if #available(iOS 14, *) {
datePicker.preferredDatePickerStyle = .wheels
datePicker.sizeToFit()
}
textField.inputView = datePicker
Objective-C
if (@available(iOS 14.0, *)) {
[datePicker setPreferredDatePickerStyle:UIDatePickerStyleWheels];
[datePicker setDatePickerMode:UIDatePickerModeDate]; //optional
[datePicker sizeToFit];
}
苹果forum的回答请看这里
这是我的工作
let datePicker = UIDatePicker()
datePicker.datePickerMode = .date //change the mode
datePicker.locale = .current
if #available(iOS 14, *) {
datePicker.preferredDatePickerStyle = .wheels
datePicker.sizeToFit()
}
birthdateTF.inputView = datePicker