iOS时间计时器NSTimer

作者: Lxin_ | 来源:发表于2017-01-19 16:35 被阅读223次
  • 开启timer

_timer = [NSTimer scheduledTimerWithTimeInterval:10 target:self selector:@selector(loadToken) userInfo:nil repeats:YES];

repeats为NO,只调用一次计时器方法。
repeats为YES,重复执行seletor方法。

  • 永久停止timer

[_timer invalidate];
_timer = nil;

注意:停止后,一定要将timer赋空,否则没有释放

  • 暂时停止与开启

//关闭定时器  
[_timer setFireDate:[NSDate distantFuture]];  
//开启定时器  
[_timer setFireDate:[NSDate distantPast]];  

很简单的技巧。
将计时器的开启设在了未来,即暂停
将计时器的开启设在了过去,即开启

  • 例子

//页面将要进入前台,开启定时器  
- (void)viewWillAppear:(BOOL)animated {  
    //开启定时器  
    [_timer setFireDate:[NSDate distantPast]];  
}  
  
//页面消失,进入后台不显示该页面,关闭定时器  
- (void)viewDidDisappear:(BOOL)animated {  
    //关闭定时器  
    [_timer setFireDate:[NSDate distantFuture]];  
} 

在页面消失的时候关闭计时器,然后等页面再次打开的时候,开启定时器。

相关文章

网友评论

    本文标题:iOS时间计时器NSTimer

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