2013-02-20 142 views
0

我正在做一个温度转换器,并希望改进应用程序,所以我决定添加代码,以改变背景图像的输出,这将是转换的数字。要做的是,如果我的转换温度标签文本< 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"]]; 
} 

哪里是我错了吗?并且也提前代码中的一个需要我的目的是什么?谢谢!

回答

2

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

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

添加'at'符号使事情正确。

你的日志语句是反向的,你真正想要的是什么;如果温度小于零,你不想说温度是以上为零。而你缺少一个条件:如果转换后的温度为零怎么办?

+0

所以我按照您的指示,但仍Xcode中给我的标识符错误! – Ptheguy 2013-02-20 21:42:58

+0

也感谢您指出= 0条件。 – Ptheguy 2013-02-20 21:43:25

+0

您是否尝试在设置为使用AppKit('NSColor','NSImage')的项目中使用UIKit对象('UIColor','UIImage')?如果你想写一个iOS应用程序,确保它的设置。但是,如果您尝试使用的代码来自iOS项目,并且您想要在桌面应用程序中使用它,则需要使用“NSColor”和“NSImage”。这是一个远投,但我认为值得一提。 – trudyscousin 2013-02-20 22:00:00

0

正如trudyscousin说,U应提供的NSLog与OBJ-C字符串是这样的:

NSLog(@"The temperature is below 0"); 
+0

所以我按照你的指示,但仍然xCode给我的标识符错误! – Ptheguy 2013-02-20 21:42:26

相关问题