如何查看我UITextField
的信件中的文字?我希望我UITextField
只包含数字字符、破折号、+ 符号、空格等,但不包含字母。
那么如何检查我的UITextField.text
是否不包含字母?
提前致谢!
如何查看我UITextField
的信件中的文字?我希望我UITextField
只包含数字字符、破折号、+ 符号、空格等,但不包含字母。
那么如何检查我的UITextField.text
是否不包含字母?
提前致谢!
我认为这应该有效:
if ([myTextField.text rangeOfCharacterFromSet:[NSCharacterSet letterCharacterSet]].location != NSNotFound) {
NSLog(@"This string contains letters.");
}
所有可用的字符集都记录在这里:NSCharacterSet
为了增加更多好处并防止错误,如果您使用故事板,请选择UITextField
并打开属性检查器(右侧列,顶部有盾牌图标),在该视图的中点有 5 个下拉菜单,其中之一这就是所谓的Keyboard
。你有几个控制器,其中一个是Numbers and Punctuation
.
这会将您的键盘设置为仅显示数字和所有可用的标点符号。将其与:
//SET LEGAL CHARACTERS
NSCharacterSet* tSet = [NSCharacterSet characterSetWithCharactersInString:
@"abcdef1234567890ABCDEF"];//whatever amount or type of characters you want to use
NSCharacterSet* invSet = [tSet invertedSet];
if (yourString rangeOfCharacterFromSet:invSet].location != NSNotFound){
[[[UIAlertView alloc] initWithTitle:@"Input Error"
message:@"Make sure the value entered is numerical or punctual only."
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil] show];
}
并且您有一个简单易用的应用程序,可以防止用户意外或故意造成错误。