可能重复:
textField:shouldChangeCharactersInRange:replacementString:
我面临的情况是允许用户输入 - 输入数字后签名。如何限制/避免这种情况?
答案 0 :(得分:0)
使用NSCharacterSet ...
例如
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
static NSCharacterSet *charSet3 = nil;
if(!charSet3) {
charSet3 = [[NSCharacterSet characterSetWithCharactersInString:@"0123456789 "] invertedSet];
}
NSRange location = [string rangeOfCharacterFromSet:charSet3];
return (location.location == NSNotFound);
}
这样只允许用户在文本字段中输入数值,而不会使用其他字符......
希望这有助于..... :)。
答案 1 :(得分:0)
如果您要限制或检查输入的文字是否为数字,请执行此操作。
if ([textField.text isKindOfClass:[NSNumber class]]) {
}