存在多个 UITextField 时从 UIDatePicker 返回值
Returning value from UIDatePicker when multiple UITextFields are present
我有多个 UITextField
,其中一些将使用 'UIDatePicker'。我怎样才能 return 来自 UIDatePicker 的值而不必在 datePickerChanged
函数中编码 textField.text = formatter.stringFromDate(datePicker.date)
?
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)?
}
您可以创建一个名为 currentTextField
的变量,并在您的 case 语句中将 textField
分配给 currentTextField
。然后你的 datePickerChanged(_:) 函数可以使用 currentTextField
来设置日期。
我有多个 UITextField
,其中一些将使用 'UIDatePicker'。我怎样才能 return 来自 UIDatePicker 的值而不必在 datePickerChanged
函数中编码 textField.text = formatter.stringFromDate(datePicker.date)
?
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)?
}
您可以创建一个名为 currentTextField
的变量,并在您的 case 语句中将 textField
分配给 currentTextField
。然后你的 datePickerChanged(_:) 函数可以使用 currentTextField
来设置日期。