Ich habe mehrere UITextField
und einige von ihnen verwenden den 'UIDatePicker'. Wie kann ich den Wert vom UIDatePicker zurückgeben, ohne textField.text = formatter.stringFromDate(datePicker.date)
in der datePickerChanged
Funktion zu codieren?Rückgabewert von UIDatePicker, wenn mehrere UITextFields vorhanden sind
func textFieldDidBeginEditing(textField: UITextField) {
switch textField.tag {
//tag = 3 is the text field that needs the date
case 3:
let datePicker = UIDatePicker()
textField.inputView = datePicker
datePicker.addTarget(self, action: "datePickerChanged:", forControlEvents: .ValueChanged)
//textField.text = value returned from datePickerChanged
default: break
}
}
func datePickerChanged(datePicker: UIDatePicker) {
let formatter = NSDateFormatter()
formatter.dateStyle = .MediumStyle
let dateTextValue = formatter.stringFromDate(datePicker.date)
// how can I return (dateTextValue)?
}
Danke für die Antwort. Hmm okay, wie soll ich das 'currentTextField' initialisieren? Vielleicht verstehe ich nicht ganz – Sami
@Sami, 'var currentTextField: UITextField?' Das initialisiert currentTextField auf Null. Whoops - es sollte kein @IBOutlet sein. – 7stud
Sie können die Variable sogar als implizit unwrapped optional deklarieren: 'var currentTextField: UITextField!', Was den Umgang mit der Variable erleichtert. – 7stud