UITextField 输入内容限制和长度限制
2018-01-05 11:58
267 查看
首先 Textfield 的 delegate 是不能少的,xib连线也行
例子: textfield1 限制只能输入数字,且最多输入11位
textfield2限制只能输入字母和数字,且最多输入6位
输入长度限制
内容限制
例子: textfield1 限制只能输入数字,且最多输入11位
textfield2限制只能输入字母和数字,且最多输入6位
输入长度限制
[textfield1 addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged]; [textfield2 addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged]; - (void)textFieldDidChange:(UITextField *)textField { if (textField == textfield1) { if (textField.text.length > 11) { textField.text = [textField.text substringToIndex:11]; } }else if (textField == textfield2){ if (textField.text.length > 6) { textField.text = [textField.text substringToIndex:6]; } } }
内容限制
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { if (textField == textfield1) { return [self validateNumber:string]; }else if (textField == textfield2){ return [self validateNumberAnd:string]; }else{ return NO; //这个return NO;是我自己琢磨的,不确定return YES;会怎样 } }else{ return NO; //这个return NO;是我自己琢磨的,不确定return YES;会怎样 } } - (BOOL)validateNumber:(NSString*)number { BOOL res = YES; NSCharacterSet* tmpSet = [NSCharacterSet characterSetWithCharactersInString:@"0123456789"]; int i = 0; while (i < number.length) { NSString * string = [number substringWithRange:NSMakeRange(i, 1)]; NSRange range = [string rangeOfCharacterFromSet:tmpSet]; if (range.length == 0) { res = NO; break; } i++; } return res; } - (BOOL)validateNumberAnd:(NSString*)number { BOOL res = YES; NSCharacterSet* tmpSet = [NSCharacterSet characterSetWithCharactersInString:@"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"]; int i = 0; while (i < number.length) { NSString * string = [number substringWithRange:NSMakeRange(i, 1)]; NSRange range = [string rangeOfCharacterFromSet:tmpSet]; if (range.length == 0) { res = NO; break; } i++; } return res; }
相关文章推荐
- iOS之UITextField对输入的内容的长度限制和内容限制
- 如何更好地限制一个UITextField的输入长度
- 如何更好地限制一个UITextField的输入长度
- textfield、 textView内容长度限制(中文输入越界)附带:textView回车效果,判断禁止字符
- 在这里给大家推荐一款特别好用的、对UITextField输入内容的限制的类--WTReTextField
- 用户输入内容长度限制的异常 分类: python异常 2013-06-24 10:48 335人阅读 评论(0) 收藏
- 如何限制UITextField 输入文字的长度?
- UITextField ,UITextView 输入长度的限制
- 如何更好地限制一个UITextField的输入长度
- iOS UITextfield只允许输入数字和字母,长度限制
- 限制UITextField的输入长度
- 限制一个或多个textfiled输入长度及内容
- 限制 UITextField 输入长度
- 限制输入字符的长度和内容
- 用户输入内容长度限制的异常
- 限制一个UITextField的输入长度
- UITextField中文输入法输入时对字符长度的限制
- UITextField输入长度限制
- UITextField限制输入长度,修改placeholder颜色和大小
- UITextField 限制输入长度