實例化計時器:
_timer = [NSTimer scheduledTimerWithTimeInterval:1.0f target:self selector:@selector(updateTimer:) userInfo:nil repeats:YES];
TimeInterval:以秒為單位,多久會觸發一次;
target:一般情況下都是self;
selector:@selector 是觸發時需要執行的事情,需要將NSTimer自身作為參數傳入;
repeats:是否重復;
在上面updateTimer:(NSTimer *)sender方法中 調用sender.fireDate獲取此時觸發的時間,然後調用timeIntervalSinceDate:(NSDate *)date;也就是觸發時間和應用開始時初始化一個date時間的差值,也就是計時器獲得的經過多久的時間了。單位秒。
- (void)updateTimer:(NSTimer *)sender{ NSInteger deltaTime = [sender.fireDate timeIntervalSinceDate:_gameDate]; NSLog(@"%d", deltaTime); //1,2,3,4,5秒計時 }
關閉計時器:調用invalidate方法停止計時器;