#pragma mark - UITextFieldDelegate
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSMutableString *preStr = [[NSMutableStringalloc] initWithString:textField.text];
[preStr replaceCharactersInRange:rangewithString:string];
for (int i=0; i<[preStrlength]; i++) {
unichar c = [preStr characterAtIndex:i];
NSString *keyStr = [NSStringstringWithFormat:@"%C",c];
if (keyStr == nil || keyStr ==NULL) {
return NO;
}
if ([keyStr isKindOfClass:[NSNullclass]]) {
return NO;
}
if ([keyStr isKindOfClass:[NSStringclass]]) {
if ([[keyStrstringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceCharacterSet]] length]==0) {
return NO;
}
}
}
if(preStr.length >18){ //18为限制输入的最大数
return NO;
}
return YES;
}
本文探讨了如何在输入字段中实现字符限制与验证,包括正则表达式使用、字符过滤与最大长度检查。
1万+

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



