-4

Time in millisecondを簡単に取得できる単純なタイマーを作成するにはどうすればよいですか。次のようなもの...

Timer *timer = [Timer alloc] init];
[timer start];   //Which will start from Zero
[timer pause];   //Which will Pause timer
[timer stop];    //Which will stop the timer
[timer getCurrentTime];  //Which will give me time elapsed in millisecond since [timer start] is called

NSTimerは、より多くの機能を提供しますが、これは提供しないため、機能していないようです。NSTimer を使用してこの機能を取得できますか? これを達成するための最良の方法は何ですか?

注:特定の期間に関数を呼び出したくはありませんが、タイマーが開始してからのミリ秒が必要です。

4

2 に答える 2

1

なぜそのためにタイマーが必要なのですか?
開始時間を保存し、測定を停止するときに現在の時間から差し引くだけです。

static NSTimeInterval startTime;
static BOOL isRunning;
- (IBAction)toggle:(id)sender
{
    if(!isRunning)
    {
        startTime = [NSDate timeIntervalSinceReferenceDate];
        isRunning = YES;
    }
    else
    {
        NSLog(@"%f", ([NSDate timeIntervalSinceReferenceDate] - startTime) * 1000.0);
        isRunning = NO;
    }
}
于 2013-06-17T08:49:27.130 に答える