CADisplayLink类似NSTimer是一个定时器,只不过是一秒会调用60次指定的方法
使用方法:
#import "ViewController.h"@interface ViewController ()@property (nonatomic, strong) CADisplayLink *displayLink;@property (nonatomic, assign) int count;@end@implementation ViewController- (void)viewDidLoad{ [super viewDidLoad]; // 创建CADisplayLink self.displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(displayLinkEvent)]; [self performSelector:@selector(eventOne) withObject:nil afterDelay:1]; // 一秒后销毁 [self performSelector:@selector(eventTwo) withObject:nil afterDelay:2];}- (void)eventTwo{ [self.displayLink invalidate];}- (void)eventOne{ // 添加到循环圈(开始执行) [self.displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];}- (void)displayLinkEvent{ self.count++; NSLog(@"%i",self.count);}@end
其中,displayLinkEvent方法在一秒内被调用了60次。