ios--->NStimer用法

NStimer用法

1、初始化
    • (NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)yesOrNo;
    • (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)yesOrNo;
  • 注:不用scheduled方式初始化的,需要手动addTimer:forMode: 将timer添加到一个runloop中。
      而scheduled的初始化方法将以默认mode直接添加到当前的runloop中.
     
2、参数含义
  • (NSTimeInterval)seconds
    预订一个Timer,设置一个时间间隔。
  • target:(id)aTarget
    表示发送的对象,如self
    selector:(SEL)aSelector
    方法选择器,在时间间隔内,选择调用一个实例方法
  • userInfo:(id)userInfo
    此参数可以为nil,当定时器失效时,由你指定的对象保留和释放该定时器。
  • repeats:(BOOL)yesOrNo
    当YES时,定时器会不断循环直至失效或被释放,当NO时,定时器会循环发送一次就失效。
3、停止
    • (void)invalidate;
      这个是唯一一个可以将计时器从runloop中移出的方法。
4、注:

NSTimer可以精确到50-100毫秒.
NSTimer不是绝对准确的,而且中间耗时或阻塞错过下一个点,那么下一个点就pass过去了.

posted @ 2017-11-04 13:11  技术-刘腾飞  阅读(188)  评论(0编辑  收藏  举报