以编程方式将华氏温度转换为摄氏温度

时间:2012-09-13 09:05:03

标签: iphone ios xcode

在我的项目中,想要首先显示华氏度的天气,然后如果用户想要点击转换,则需要以摄氏度显示天气。我的代码是

NSNumber *metric = [[NSUserDefaults standardUserDefaults] objectForKey:@"metric"];

NSLog(@"Metric is %@", metric);

CGFloat aFloat = [speed floatValue];
CGFloat tFloat = [temperature floatValue];
CGFloat tempFloat = (tFloat-30)/2;
NSNumber * p_Number = [NSNumber numberWithFloat:tempFloat];


//Convert mph to kmph
if ([metric boolValue]) {

    [windValueLabel setText:[NSString stringWithFormat:@"%.2f kmph", aFloat * 1.6]  ];
    temperatureLabel.text = [NSString stringWithFormat:@"%@", p_Number];

}
else{
    [windValueLabel setText:[NSString stringWithFormat:@"%.2f mph", aFloat / 1.6]];
    temperatureLabel.text = [NSString stringWithFormat:@"%@", temperature];
}

当你启动应用程序时,它的工作状态显示华氏温度,但在摄氏温度下崩溃......就是当前的转换。帮助我的人

1 个答案:

答案 0 :(得分:0)

您的公式略有偏差,您想:

CGFloat tempFloat = (tFloat-32.0) / 1.8;

但这不是让它崩溃的原因。事实上,它并没有让我崩溃。它崩溃时会得到什么信息?