带有 DatePicker 的 UITextField 崩溃 [英] UITextField with DatePicker crashes
问题描述
我是 iOS/Swift 新手,请耐心等待.
I am new to iOS/Swift so please bear with me.
我有一个 TextField、timeTextField,并且想在点击时显示一个 TimePicker.所有这些都是工作性质,但选择另一个元素时,应用程序崩溃为什么它会崩溃?更新 1:更新代码代码:
I have a TextField, timeTextField, and want to display a TimePicker on click. All this is working property but when another element is selected the app crashes why does it crash? UPDATE 1: updated code code:
func setupTimePicker(){
datePickerView.datePickerMode = UIDatePickerMode.time
datePickerView.removeFromSuperview()
timeTextField.inputView = datePickerView
datePickerView.addTarget(self, action: #selector(self.datePickerValueChanged(sender:)), for: .valueChanged)
}
func datePickerValueChanged(sender:UIDatePicker) {
var date = Date()
let calendar = Calendar.current
date = sender.date;
let hour = calendar.component(.hour, from: date)
let minutes = calendar.component(.minute, from: date)
timeTextField.text = String(format: "%02d", hour) + ":" + String(format: "%02d", minutes)
}
错误:
[TestApp.ViewController pickTime:]: 无法识别的选择器发送到实例 0x7f9305e08e20
[TestApp.ViewController pickTime:]: unrecognized selector sent to instance 0x7f9305e08e20
推荐答案
自 iOS8/iOS9
起,当您将视图作为 inputView
添加到 UITextField代码> 应用程序崩溃.要解决您的崩溃,在将
datePicker
作为 inputView
添加到 UITextField
之前调用 [
.这将解决崩溃问题.
Since iOS8/iOS9
, when you added a view as inputView
to UITextField
app crashes. To resolve your crash, before adding datePicker
as inputView
to UITextField
call [<pickerView> removeFromSuperView]
. This will solve crash issue.
这篇关于带有 DatePicker 的 UITextField 崩溃的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!