1.首先需要定义一个宏,将需要允许的内容包含在内
#define ALPHANUM @"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"//限制只能输入数字和字母
2.在需要限制的为止中写入代理
_textfield.delegate = self;
3.实现代理方法
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
//string是你输入的值
NSCharacterSet *cs = [[NSCharacterSet characterSetWithCharactersInString:ALPHANUM] invertedSet];
//将输入的非法字符替换成空
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
return [string isEqualToString:filtered];
}
上述代码除了输入的时候string会有值,点击删除按钮的时候string也是有值的,值为空,即为""