사용자가 숫자를 입력 할 수있는 UITextField
의 iOS 앱이 있습니다. 사용자가 입력 한 값이 유효한 숫자인지 확인하려면 어떻게해야합니까? 또는 10 진수). 여기에 내가 시도 것입니다,하지만 어떤 이유로 소수입니다 작동하지 않습니다 :NSString이 유효한 숫자인지 확인 - 전체 또는 십진수
NSCharacterSet *notDigits = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];
if ([numString rangeOfCharacterFromSet:notDigits].location == NSNotFound) {
NSLog(@"valid number");
}
else {
NSLog(@"invalid number");
}
을 나는 위의 코드는 콘솔 로그에서 "올바르지 않은 숫자"를 반환 같은 435.634로 진수를 입력합니다. 내가 왜 decimalDigitCharacterSet
을 사용하면서 이것이 작동하지 않는지 이해할 수 없습니까?
등 다양한 로케일 소수 문자로도 작동합니다. NSNumberFormatter를 사용하여 로켈 고유 번호를 올바르게 처리합니다. – rmaddy
'decimalDigitCharacterSet' 세트는 구두점이 아닌 숫자를 포함합니다. – rmaddy
@Supertecnoboff - 또 다른 옵션은 사용자에게 숫자 키패드를 제시하는 것입니다. 아무 것도 걱정할 필요가 없습니다. https://www.cocoacontrols.com/search?q=numeric –