1、#pragma mark- UITextFieldDelegate
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
if (string.length ==0) returnYES;
// if (![selfvalidateNumber:string]) {
// returnNO;
// }
NSInteger existedLength = textField.text.length;
NSInteger selectedLength = range.length;
NSInteger replaceLength = string.length;
if (existedLength - selectedLength + replaceLength >11) {
returnNO;
}
}
returnYES;
}
2、
[textField addTarget:selfaction:@selector(textFieldDidChange:)forControlEvents:UIControlEventEditingChanged];
这样就可以更好地限制输入长度:
- (void)textFieldDidChange:(UITextField *)textField
{
if (textField ==self.titleField) {
if (textField.text.length >11) {
textField.text = [textField.text substringToIndex:11];
}
}
}
本文介绍如何通过UITextFieldDelegate方法shouldChangeCharactersInRange来实现输入字符长度限制,并使用textFieldDidChange:方法进一步确保输入内容不会超过最大长度。
1065

被折叠的 条评论
为什么被折叠?



