定时器的使用NStimer 和CADisplayLink

一,NSTimer

     scheduled 计划,安排

     interval : 间隔

     target :  一般指控制器

     selector: 方法

     userInfo : 用户自定义的参数

     repeats: 重复

     

     每隔1秒钟 调用 控制器的  didClickButton 方法, 传递的参数为nil

     

     一旦创建就会立即生效

     

     在使用timer的时候, 如果调用了 invalidate方法, 那么这个计时器就不会再次生效

     重新创建新的timer

     

    _timer = [NSTimer scheduledTimerWithTimeInterval:1

                                              target:self

                                            selector:@selector(didClickButton:)

                                            userInfo:nil

                                             repeats:YES];

    

//    [_timer fire];  调用fire 这个计时器会立即执行, 不会等待 interval 设置的时间

    //把图片轮播的NStime的优先级提高

    NSRunLoop *mainLoop = [NSRunLoop mainRunLoop];

    

    //将定时器添加到消息循环中

    [mainLoop addTimer:_timer forMode:NSRunLoopCommonModes];

    


二,CADisplaylink
         CADisplayLink是一种屏幕刷新频率的触发时钟机制,每秒钟执行60次左右,是一个计时器,可以使绘图的代码与视图的刷新频率保持同步,是专为动画定制的.

    CADisplayLink * link = [CADisplayLink displayLinkWithTarget:self selector:@selector(fire)];

    //添加到主运行循环

    [link addToRunLoop:[NSRunLoop mainRunLoop] forMode:NSDefaultRunLoopMode];





你可能感兴趣的:(定时器的使用NStimer 和CADisplayLink)