【发布时间】:2017-04-19 15:00:19
【问题描述】:
我想在 UIPickerView 滚动时更新 UIAlertController 中的 UITextField。
我尝试在我的文本字段上添加标签:
myTextField.addTextField(configurationHandler: { (textField) -> Void in
textField.inputView = self.myPickerView
textField.tag = 2
textField.delegate = self
})
对于 pickerView 委托方法 didSelectRow 我声明了一个 ivar pickerViewName 来存储行的名称:
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
pickerViewName = myArray[row].name
//Update UITextField text here, but unable to get it's tag.
}
在textFieldDidBeginEditing 委托方法上:
func textFieldDidBeginEditing(_ textField: UITextField) {
if (textField.tag == 2)
{
textField.text = pickerViewName!
}
}
但它不起作用。当我上下滚动时,文本字段不会更新。非常感谢您能帮我指出我的错误在哪里!谢谢。
【问题讨论】:
标签: ios swift uitextfield uipickerview uialertcontroller