假设您有一个电子邮件字段和一个手机字段。如果用户填写了email字段,则不能再填写手机字段,反之亦然。
下面是我的尝试。将一个字段设置为另一个字段的委托目前只会阻止"已完成";退出键盘后,它不会使其他文本字段处于非活动状态。
在viewDidLoad
self.cellField.delegate = emailField as? UITextFieldDelegate
之外func textFieldShouldBeginEditing(cellField: UITextField) -> Bool {
if emailField.text?.isEmpty == false {
return false
} else {
return true
}
} //// I also tried textFieldDidBeginEditing
self.cellField.delegate = self
self.emailField.delegate = self
func textFieldShouldBeginEditing(textField: UITextField) -> Bool {
if textField == cellField {
return emailField.text!.isEmpty
} else if textField == emailField {
return cellField.text!.isEmpty
}
return true
}