我正在为ios应用程序编写if语句,我想根据当前具有焦点的文本字段更改选择器。这是我到目前为止所做的。
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
if (condition) {
return array1.count
}else{
return array2.count
}
}
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
if (condition) {
textBox1.text = array1[row]
}else{
textBox2.text = array2[row]
}
}
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
if (condition) {
return array1[row]
}else{
return array2[row]
}
}
答案 0 :(得分:0)
您想要UITextField.isFirstResponder()
答案 1 :(得分:0)
好吧,虽然我没有在代码中看到任何与文本字段相关的代码,但我们假设你有一个名为myTxt的UITextfield的IBOutlet。触摸时的代码:
myTxt.addTarget(self, action: #selector(CurrentViewController.MethodToUpdatePicker()), forControlEvents: UIControlEvents.TouchUpInside)
以及当值发生变化时的情况:
myTxt.addTarget(self, action: #selector(CurrentViewController.MethodToUpdatePicker()), forControlEvents: UIControlEvents.EditingChanged)
只需用您的函数替换CurrentViewController.MethodToUpdatePicker()
即可更新选择器。
以下是来自apple的更多文档: