在我的 iPad 应用程序中。我有一个 UITextField。用户将在该文本字段中输入一些值。此值必须是字母数字。如果他/她输入任何特殊字符,我想向用户显示警报。我该怎么做?警觉的条件应该是什么?
任何帮助将不胜感激。
谢谢和问候, PC
在我的 iPad 应用程序中。我有一个 UITextField。用户将在该文本字段中输入一些值。此值必须是字母数字。如果他/她输入任何特殊字符,我想向用户显示警报。我该怎么做?警觉的条件应该是什么?
任何帮助将不胜感激。
谢谢和问候, PC
在委托中实现textField:shouldChangeCharactersInRange:replacementString:
,检查替换字符串是否有特殊字符,如果检测到任何替换,则禁止替换。
检查非字母数字的最简单方法如下:
if ([replacementString rangeOfCharacterFromSet:[[NSCharacterSet alphanumericCharacterSet] invertedSet]].location != NSNotFound) {
// There are non-alphanumeric characters in the replacement string
}
你可以这样做: -
#define ACCEPTABLE_CHARECTERS @" ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSCharacterSet *acceptedInput = [NSCharacterSet characterSetWithCharactersInString:ACCEPTABLE_CHARECTERS];
if (![[string componentsSeparatedByCharactersInSet:acceptedInput] count] > 1)
return NO;
else
return YES;
}