0
votes

I have problem with trying to get UIDatePicker to work when the user select a date.
I keep getting an error saying : unrecognised selector sent to instance.

 func textFieldDidBeginEditing(_ textField: UITextField) {
    let datePicker: UIDatePicker = UIDatePicker()
    datePicker.datePickerMode = UIDatePickerMode.date
    textField.inputView = datePicker
    datePicker.backgroundColor = UIColor.white
    datePicker.addTarget(self, action: Selector(("datePickerChanged:")), for: .valueChanged)

}




func datePickerChanged(sender: UIDatePicker){

    let formatter = DateFormatter()
    formatter.dateStyle = DateFormatter.Style.medium
    DEPtextField.text = formatter.string(from: sender.date)

}
2
Please try by removing one extra parenthesis. Use only Selector("datePickerChanged:") - spaleja
Please provide the code with a minimal example in your post, not just by a link. - Mario Santini
if you are using Swift 2.2, you have to use #selector... - spaleja
I have try to removing extra parenthesis, it will shown "no method declared with Object-C Selector" and I'm using the latest version not swift2.2 @spaleja - kemu
I've edit my questions, could u help @mario - kemu

2 Answers

0
votes

Change your function as follows

func datePickerChanged(_ sender: UIDatePicker){

    let formatter = DateFormatter()
    formatter.dateStyle = DateFormatter.Style.medium
    DEPtextField.text = formatter.string(from: sender.date)

}

It should work.