嗨,我创建了一个 UITextField,我想将其限制为 3 个字母。如果它为空,则禁用按钮,如果不启用按钮。有谁知道如何做到这一点?
我已经尝试过了,但如果我输入 3 个字母,它会显示 3 但不会关闭键盘,它并不能真正正常工作。我不禁觉得有更好的方法来做到这一点。
这是我所做的
- (void)hideKeyboardAction {
NSLog(@"Hide");
if([self.playerName length] >= 4){
[self.nameTextField resignFirstResponder];
} else if([self.playerName length] < 3) {
[self.addToScores setEnabled:FALSE];
}
}
- (IBAction)hideKeyboard:(id)sender {
[self hideKeyboardAction];
}
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
self.playerName = [textField.text stringByReplacingCharactersInRange:range withString:string];
if([self.playerName length] <4 ){
[self hideKeyboardAction];
}
if([self.playerName length] > 3){
[self.addToScores setEnabled:FALSE];
}
BOOL shouldStayOpen = !([self.playerName length] > 3);
return shouldStayOpen;
}