在IOS中创建简单计时器

时间:2013-06-17 08:38:44

标签: ios cocoa-touch nstimer

如何创建一个简单的计时器,只需毫秒中的时间。像下面这样......

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获得此功能吗?实现这一目标的最佳方法是什么?

注意:我不想在任何特定时间段调用任何函数,但只想要自计时器启动以来的毫秒数。

2 个答案:

答案 0 :(得分: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;
    }
}

答案 1 :(得分:1)

实际上我正在寻找这个但不知何故我错过了这个问题

How Do I write a Timer in Objective-C?