,你可以做這樣的:
默認情況下禁用loginbutton因爲文本框是空的登錄屏幕出現時......
,並實現以下文本框的委託方法:
斯威夫特
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
if textField == usernameField {
loginButton.enabled = ((textField.text! as NSString).stringByReplacingCharactersInRange(range, withString: string).characters.count > 0 && passwordField.text?.characters.count > 0)
} else if textField == passwordField {
loginButton.enabled = ((textField.text! as NSString).stringByReplacingCharactersInRange(range, withString: string).characters.count > 0 && usernameField.text?.characters.count > 0)
}
return true
}
ObjC
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
if (textField == self.usernameField) {
self.loginButton.enabled = ([textField.text stringByReplacingCharactersInRange:range withString:string].length > 0 && self.passwordField.text.length > 0);
} else if (textField == self.passwordField) {
self.loginButton.enabled = ([textField.text stringByReplacingCharactersInRange:range withString:string].length > 0 && self.usernameField.text.length > 0);
}
return YES;
}
感謝您的想法!我用工作代碼做了一個答案。 – Azer