我有这个基本的文本检查代码,在 iOS 7 之前一直运行良好:
NSMutableCharacterSet*testchars=[NSCharacterSet alphanumericCharacterSet];
[testchars addCharactersInString:@".-"];
BOOL didFindBadCharacters = ([userInput rangeOfCharacterFromSet:[testchars invertedSet]].location != NSNotFound);
这里的简单想法是检查用户的输入,如果用户输入的任何字符不是字母数字或包含点或破折号userInput
,则找到一个 BOOL 。也就是说,这些条目很好,但是空格或符号就不行了。true
直到 iOS 7,这才有效。我不明白为什么这与 iOS 7 不同,但现在如果用户输入点或破折号,BOOLtrue
会在我登录时返回,以确保没有其他字符(例如空格)触发而是错误。
为什么这会在 iOS 7 上失败?似乎是基本的语言功能。