美文网首页
NSTimer 暂停/继续

NSTimer 暂停/继续

作者: 0蛐蛐0 | 来源:发表于2018-09-13 11:23 被阅读66次

    NSTimer 有一个属性叫 fireDate
    fireDate 就是 fire 的开始时间所以我们就有思路了。

    • 暂停:
     [timer setFireDate:[NSDate distantFuture]];
    

    distantFuture 就是问你未来有多远呢?好远好远就是无法到达的时间,所以 timer就一直等待不 fire了。也就是暂停了。

    • 继续:
     [timer setFireDate:[NSDate date]];
    

    这个当然就是把fire 的时间设置为当前时刻,所以timer就立刻开工啦!

    完事!


    有时候可能会有这种定时器 ,每0.1秒调用一次refresh函数

    self.timer = [NSTimer scheduledTimerWithTimeInterval:0.1
                                                  target:self
                                                selector:@selector(refresh)
                                                userInfo:nil
                                                 repeats:YES];
    

    但是有时候游戏里要暂停,可以这样:

    [self.timer setFireDate:[NSDate distantFuture]];
    

    需要继续的时候

    [self.timer setFireDate:[NSDate date]];
    

    相关文章

      网友评论

          本文标题:NSTimer 暂停/继续

          本文链接:https://www.haomeiwen.com/subject/jmgqgttx.html