0

rate を安全に使用するために、次のメソッドを作成しました。
(レートは、INFINITY、NAN、0-1 などの無効な値になることがあります)

-(double)XXXX:(double)rate
    if (rate >= 1) {
         return 1;
    } else if (rate <= 0) {
        return 0;
    } else if (0 <= rate && rate <= 1) {
        return rate;
    } else {
        return 0;
    }
}

このメソッドには何と名前を付ける必要がありますか?

編集:
UISlider、UIProgress、または単に NString(XX %) で時間の経過を表示するために rate を使用します。

メソッドの使用法は次のとおりです。

rate = [objectOrClass XXXX: currentTime / totalTime];
rate = [objectOrClass XXXX:(currentTime + additionalTime) / totalTime];

また、レートから currentTime を計算するためにも使用します。

currentTime = [objectOrClass XXXX:rate] * totalTime;
4

3 に答える 3

1
static inline float RateAligned(float rate) {
    return MAX(.0f, MIN(1.0f, rate));
}
于 2012-07-13T10:35:59.990 に答える
0
-(double) adjustRate:(double)rate;
于 2012-07-13T10:34:35.177 に答える
0
When totalTime is zero  you will get INFINITY.

When totalTime and currentTime both are zeros you will get NAN.

When (currentTime + additionalTime) and currentTime both are zeros you will get NAN.

お役に立てると思います。

于 2012-07-13T12:13:16.823 に答える