简体   繁体   English

带有DatePicker的UITextField崩溃

[英]UITextField with DatePicker crashes

I am new to iOS/Swift so please bear with me. 我是iOS / Swift的新手,请耐心等待。

I have a TextField, timeTextField, and want to display a TimePicker on click. 我有一个TextField,timeTextField,并希望在单击时显示一个TimePicker。 All this is working property but when another element is selected the app crashes why does it crash? 所有这些都是工作属性,但是当选择另一个元素时,应用程序崩溃了,为什么会崩溃? UPDATE 1: updated code code: 更新1:更新的代码为:

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)
}

error: 错误:

[TestApp.ViewController pickTime:]: unrecognized selector sent to instance 0x7f9305e08e20 [TestApp.ViewController pickTime:]:无法识别的选择器已发送到实例0x7f9305e08e20

Since iOS8/iOS9 , when you added a view as inputView to UITextField app crashes. iOS8/iOS9 ,将视图作为inputView添加到UITextField应用时崩溃。 To resolve your crash, before adding datePicker as inputView to UITextField call [<pickerView> removeFromSuperView] . 要解决崩溃,请在将datePicker作为inputView添加到UITextField请调用[<pickerView> removeFromSuperView] This will solve crash issue. 这将解决崩溃问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM