我可能遗漏了一些明显的东西(仍在学习 Objective-C!),但由于某种原因,我的 NSString 变量之一在我的if
语句中有一个空值,我不知道为什么?
我什至已经输出到 NSLog,但我仍然不明白它为什么会这样。
基本上,用户在文本字段 ( itemWeight ) 中输入金额,此if
语句验证输入并根据结果显示警报。问题似乎只出现在输入 0.751 时,如果您输入任何其他数量(0.750、0.749、0.752、0.753 等),它会按预期工作。
相关代码示例如下...
.h 文件:
@property (strong, nonatomic) IBOutlet UITextField *itemWeight;
.m 文件:
NSString *rawWeightText = itemWeight.text;
float convertedWeightText = rawWeightText.floatValue;
NSString *weightMessage;
if (convertedWeightText <= 0.750)
{
weightMessage = @"under 0.750";
}
else if (convertedWeightText >= 0.751)
{
weightMessage = @"0.751 or over";
}
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle: @"Error"
message: weightMessage
delegate: nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
任何我出错的想法/我忘记做的事情将不胜感激,谢谢!