IOS-简单计时器的使用

1. 使用NSTimer *_timer --游戏计时器

2. NSDate *_startTime -- 开始时间

3. 初始化计时器 _timer = [NSTimer scheduledTimerWithInterval : 1.0f target: self selector:@selector(updateTimer:) userInfo: nil repeats:YES];

  初始化计时器的意思是:每隔1.0s执行一次updateTimer方法,如果将repeats 设置为NO,则只会在开始后的1.0s执行一次,而不是每隔1.0s再去执行

4. - (void) updateTimer : (NSTimer *) sender {

  //计算游戏开始时间和当前时间的时间差,单位秒

  //sender.fireDate就是获取当前时间

  NSInteger deltatime = [sender.fireDate timeIntervalSinceDate:_startTime];//这就是计算开始时间和当前时间的时间差几秒

  //将时间差设置到显示控件label中,格式  00:00

  //格式化字符串:%d : 输出数字,%2d:输出2位数字  %02d:输出两位数字,不足两位在左边补0

  //deltatime / 60能获取到当前的分钟 deltatime % 60 :能获取到当前的秒

  NSString *timestr = [NSString stringWithFormat: @"%02d:%02d", deltatime / 60,deltatime % 60];

  [_time setText : timestr];//这样每隔1s用时就会变化一次

}

5. 关闭计时器: [_timer invalidate]; 

原文地址:https://www.cnblogs.com/liyajie/p/4970240.html