当我有超过 1 个 UITextField 时,我无法关闭键盘。
我有 2 个 TextField:TextField1
和 TextField2
并且我给它们每个标记 1
和 2
如果标签等于 2,我想隐藏键盘,如果我触摸标签等于 1 的文本字段,键盘再次可见,这适用于我的代码,但是当我把它转回去时,代码不像我做的那样想要,我先触摸 TextField1
然后触摸 TextField2
键盘仍然可见并且没有隐藏
我的代码是这样的
func textFieldDidBeginEditing(textField: UITextField) {
if (textField.tag == 2) {
self.view.endEditing(false)
textField.resignFirstResponder()
} else {
self.view.endEditing(true)
}
}
我也尝试使用像 Editing Did Begin
和 Editing Changed
这样的事件,但不能像我想要的那样
请帮助我如何在键盘已经可见时隐藏它
最佳答案
试试这个:
func textFieldDidBeginEditing(textField: UITextField) {
if (textField.tag == 2) {
self.view.endEditing(true)
} else {
textField.becomeFirstResponder()
}
}
self.view.endEditing(true)
不会显示键盘,它实际上会尝试隐藏它,迫使第一响应者辞职。
关于ios - 当它已经可见时关闭键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37342147/