I want to add a Done button within a popped up datePickerView in Swift.
Here is the code:
@IBOutlet var datePicker: UITextField!
@IBAction func date
@IBOutlet weak var txtDate: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
//Write toolbar code for done button
let toolBar = UIToolbar()
toolBar.barStyle = .default
toolBar.isTranslucent = true
let space = UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: nil, action: nil)
let doneButton = UIBarButtonItem(title: "Done", style: .done, target: self, action: #selector(onClickDoneButton))
toolBar.setItems([space, doneButton], animated: false)
toolBar.isUserInteractionEnabled = true
toolBar.sizeToFit()
txtDate.inputAccessoryView = toolBar //Change your TextField name here
let datePickerView = UIDatePicker()
datePickerView.datePickerMode = UIDatePicker.Mode.date
txtDate.inputView = datePickerView
datePickerView.addTarget(self, action: #selector(handleDatePicker(sender:)), for: UIControl.Event.valueChanged)
}
@objc func onClickDoneButton() {
self.view.endEditing(true)
}
@objc func handleDatePicker(sender: UIDatePicker) {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
txtDate.text = dateFormatter.string(from: sender.date)
}