在Swift中,我有一个UITextField,textA和一个UITextField,textB。
textA有时会被禁用,但textB始终处于启用状态。
使用以下方法禁用textA:
textA.enabled = false
当我在textB外面点击时,键盘应该辞职
func textFieldDidEndEditing(textField: UITextField) {
textField.resignFirstResponder()
}
此委托函数触发,但有一个例外。如果我正在编辑textB,并在禁用textA时单击textA,则textFieldDidEndEditing不会调用textB,键盘仍保持打开状态。
如果启用了textA,并且在编辑textB后单击它,则textFieldDidEndEditing会触发textB,这是没有价值的。
关于如何让代表解雇的任何想法?
答案 0 :(得分:1)
当textA未启用时,它不会注册一个tap,因此不能成为firstResponder,因此textB仍然是响应者。