How To Convert UITextField value Into NSNumber?
本问题已经有最佳答案,请猛点这里访问。
我尝试先将uitextfield值转换为float,然后将其转换为nsnumber,但这似乎不起作用,如下所示。
1 2 3 | float carb = [self.carbGrams.text floatValue]; NSLog(@"%.2f", carb); nCarbGrams = carb; |
在最后一行中,我收到此错误消息:
从不兼容的类型"float"分配给"nsnumber*uuu strong"
然后我试着通过这样做把碳水化合物指定为NSnumber。
1 2 3 | NSNumber *carb = [self.carbGrams.text floatValue]; NSLog(@"%.2f", carb); nCarbGrams = carb; |
但我收到了这个错误消息:
正在用"float"类型不兼容的表达式初始化"nsnumber*uuu strong"
正如我读到的,虽然nsnumber可以接受任何类型的数值,但我似乎不正确,有人能评估一下这个问题吗?
您可以使用objective-c文本语法:
1 | NSNumber *carb = @([self.carbGrams.text floatValue]); |
您需要从float创建一个类型为
1 2 | float carb = [self.carbGrams.text floatValue]; NSNumber *nCarb = [NSNumber numberWithFloat: carb]; |
或者为什么不使用花哨的(新的)文字语法
1 | NSNumber *nCarb = @([self.carbGrams.text floatValue]); |
试试这个:
1 | NSNumber *carb = [NSNumber numberWithFloat:[self.carbGrams.text floatValue]]; |