Objective c 根据输入更改背景

Objective c 根据输入更改背景,objective-c,xcode4.5,Objective C,Xcode4.5,我已经创建了一个选项卡式温度转换器。一个选项卡提供转换器,另一个选项卡是使用google查找本地天气温度的UIWebView。现在,我想通过在第一个选项卡中设置我的背景,使其更好,该选项卡是根据用户在UITextField中的输入进行更改的转换器。例如,如果输入的字符串小于0,我希望导入一个雪白的图片来显示。所以我使用下面的if和else语句。Xcode没有给我一个错误,但是代码不工作。有人能帮我完成我的项目吗。提前谢谢!这是我的if和else代码: -(UITextField *)starti

我已经创建了一个选项卡式温度转换器。一个选项卡提供转换器,另一个选项卡是使用google查找本地天气温度的
UIWebView
。现在,我想通过在第一个选项卡中设置我的背景,使其更好,该选项卡是根据用户在
UITextField
中的输入进行更改的转换器。例如,如果输入的字符串小于0,我希望导入一个雪白的图片来显示。所以我使用下面的if和else语句。Xcode没有给我一个错误,但是代码不工作。有人能帮我完成我的项目吗。提前谢谢!这是我的if和else代码:

-(UITextField *)startingTemperatureTextField {
if (startingTemperatureTextField.text < 0)
    self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Snowy Background.png"]];
}
-(UITextField*)开始温度Extfield{
如果(开始温度ExtField.text<0)
self.view.backgroundColor=[UIColor WithPatternImage:[UIImage ImageName:@“Snowy Background.png”];
}

您正在将字符串与int进行比较。请使用intValue获取字符串的int值

    -(UITextField *)startingTemperatureTextField {
        if ([startingTemperatureTextField.text intValue] < 0){
            self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage       imageNamed:@"Snowy Background.png"]];
        }
    }
-(UITextField*)开始温度Extfield{
如果([startingTemperatureTextField.text intValue]<0){
self.view.backgroundColor=[UIColor WithPatternImage:[UIImage ImageName:@“Snowy Background.png”];
}
}
像这样试试

-(UITextField *)startingTemperatureTextField {
     if (![startingTemperatureTextField.text length] > 0 ){
          [self.view setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"Snowy Background.png"]]];
     }
}
编辑 我完全误解了你的问题!对不起

所以。。。如果用户在“startingTemperatureTextField”中输入的值小于0,则需要更改背景,因此我猜您在代码中的某个地方使用了此方法:

-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
只需更改此方法,如下所示:

-(BOOL)textFieldShouldReturn:(UITextField *)textField{
       if( textField == self.startingTemperatureTextField ){

            if ([self.startingTemperatureTextField.text intValue] < 0 ){
                 [self.view setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"Snowy Background.png"]]];
        }
    }
    textField resignFirstResponder];
    return YES;
}
-(BOOL)textField应返回:(UITextField*)textField{
如果(textField==self.startingTemperatureExtfield){
如果([self.startingTemperatureTextField.text intValue]<0){
[self.view setBackgroundColor:[UIColor WithPatternImage:[UIImage ImageName:@“Snowy Background.png”]];
}
}
textField resignFirstResponder];
返回YES;
}

所以我遵循了这一点,但背景没有改变。请帮助!我真的需要让我的应用程序的这一部分正常工作。你能不能再给我一些信息或者再给我一些代码?我想您已经检查了图像名称,但是不正确的图像名称不会引起错误,只需将背景变成黑色即可。这也不起作用。所以当输入小于0时,相同的背景会保持不变。所以你是对的,我有那个代码。我用你的换了,但背景还是不行。让我也告诉你:在我的“.xib”文件中,我拖入了一个UIImageView,并选择了一个背景,该背景显示为UI的一部分,并在应用程序运行时显示。我希望以后根据用户的输入改变背景。现在有什么不对劲吗?非常感谢你!哦,这刚刚发生了,我正在使用您的代码,当我在文本字段中键入一些内容并按return键时,xcode给我一条绿线,上面写着:“线程1:断点1.1”。我该怎么办?