所以我有这个程序来追踪你的速度和高度。我有一个UILabel,它显示您当前的速度和您当前的高度。我想做的是有一个标签,显示最大高度和最大速度。因此,基本上,如果您正在跑步并且速度达到5 mph,则最大标签将显示为5 mph,然后,如果达到6 mph,则最大标签将变为6,以此类推。海拔标签也是如此。那么我该怎么做呢?

最佳答案

我假设您的currentSpeed / currentAltitude具有浮点数或整数值。有另一组相同的类型(我将在示例中使用int)并将其命名为maxSpeed / maxAltitude。

并将此代码添加到更新速度的函数中。

if(currentSpeed > maxSpeed){
    maxSpeed = currentSpeed;
    maxSpeedLabel.text = [NSString stringWithFormat: @"%d mph", maxSpeed];
}


高度也一样。

编辑:给出您的声明:speedLabel.text = [NSString stringWithFormat:@"%.2f", [location speed]*2.236936284];

这是更新的代码:

float currentSpeed = [location speed] * 2.236936284;
if(currentSpeed - maxSpeed >= 0.01){
        maxSpeed = currentSpeed;
        maxSpeedLabel.text = [NSString stringWithFormat: @"%.2f mph", maxSpeed];
    }


而且,现在,currentSpeed和maxSpeed都是浮点数。请注意,我在这里使用了另一种类型的比较。由于浮点数的精度很高(我们并不总是需要这种精度),因此我将浮点数限制为两位小数。因此,text和maxSpeed仅在其系数增加0.01时才会更新。

09-27 17:27