我从 TextField
中获取一个值,我需要检查其中是否有数字。是 float 还是整数并不重要,但绝对是“数字”
我怎样才能捕获这个?
这就是我目前所做的 - 即使 obj 是 123(实际上是一个数字),条件为假,所以我无法进入 if
。我已经尝试过 NSValue
和 Data
,但结果相同。
id obj = self.textArea.text;
if ([obj isKindOfClass:[NSNumber class]]) {
self.weight = [NSNumber numberWithFloat:([self.textArea.text floatValue])];
最佳答案
文本字段的 text
将始终是 NSString
,因为这是类的设计方式。
然后,您的任务是将其转换为 NSNumber
。最好的方法是使用这样的数字格式化程序:
NSNumberFormatter *formatter = [NSNumberFormatter new];
self.weight = [formatter numberFromString:self.textArea.text];
if (!self.weight) {
// No valid number was found.
}
关于ios - 如何确定 TextField 是否包含数字字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17355781/