ストップウォッチの基礎として機能する NSTimer があります。
- (void)startTimer
{
_startDate = [NSDate date];
_timer = [NSTimer scheduledTimerWithTimeInterval:1.0/10.0
target:self
selector:@selector(updateTimer)
userInfo:nil
repeats:YES];
}
ラップタイムを記録する必要がありますが、2 つの別々のラップタイムが重複してはならないという問題に直面しています。
つまり、ラップ 1 が 0.0 で開始し、10.0 で終了する場合、ラップ 2 は 10.01 で開始する必要があります。しかし、ラップがある瞬間に、前のラップの終わりと新しいラップの開始の両方を解決するために、現在の時間を取得します。 1:
- (void)lap
{
NSTimeInterval timeInterval = [[NSDate date] timeIntervalSinceDate:_startDate];
timeInterval += _timeElapsed;
_startDate = [NSDate date];
}
各ラップの開始/終了時間と合計の長さを保存する必要があります。しかし、異なるラップで開始/終了時間を同じにしないと、これを行う方法がわかりません。
誰かがこの問題に遭遇しましたか? どうすれば賢明に解決できるかについてのアイデア。私が考えるすべては非常にもろく感じます。