您的位置:首页 > 产品设计 > UI/UE

UITextField只要求输入数字和字母,并限制长度

2016-03-29 00:00 483 查看
只需实现UITextField的代理方法即可:

首先对字母和数字宏定义:

#define kAlphaNum @"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"

#pragma mark UITextField Delegate
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange :( NSRange)range replacementString :( NSString *)string
{
//判断是否超过,注意要判断当string.leng>0
//的情况才行,如果是删除的时候,string.length==0
NSInteger length = _apartmentCell.inputTextField.text.length;
if (length > 15 && string.length >0)
{
return NO;
}

NSCharacterSet *cs;
cs = [[NSCharacterSet characterSetWithCharactersInString:kAlphaNum] invertedSet];
NSString *filtered =
[[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@"" ];
BOOL basic = [string isEqualToString:filtered];
return basic;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: