0

我正在制作一个温度转换器并想改进应用程序,所以我决定添加代码,根据输出更改背景图像,这将是转换后的数字。我想要做的是,如果我的 convertTemperatureLabel.text < 0,背景会变成我将导入的某个图像,当它> 0 时,背景会变成另一个图像。所以我使用了下面的代码,它给了我预期的标识符错误:

if ([convertedTemperatureLabel.text doubleValue] < 0) {
NSLog("The temperature is above 0");
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"snowy- grand-canyon-nichols_26007_600x450.jpg"]];
}

else {
NSLog("The temperature is below 0");
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"wallpaper_hazybluedots.jpg"]];
}

我的错误在哪里?代码也是我的目的所需的代码吗?提前致谢!

4

2 回答 2

2

您传递给NSLog的字符串不是NSString;的实例 它们是 C 弦。

NSLog(@"The temperature is above 0");

添加“at”符号会使事情变得正确。

您的日志语句与您实际想要的相反;如果温度小于零,您不想说温度高于零。而且您缺少一个条件:如果转换后的温度为零怎么办?

于 2013-02-20T21:08:14.720 回答
0

正如 trudyscousin 所说,你应该为 NSLog 提供 obj-c 字符串,如下所示:

   NSLog(@"The temperature is below 0");
于 2013-02-20T21:11:17.980 回答