几种初始化方法:
- 1:第一种方法:(自定义创建,创建出来的对象要使用addTimer:forMode方法手动加入主循环池中,才可执行循环)
eg:
NSTimer * timer = [NSTimer timerWithTimeInterval:1 invocation:invo repeats:YES];
//加入主循环池中
[[NSRunLoop mainRunLoop]addTimer:timer forMode:NSDefaultRunLoopMode];
//开始循环
[timer fire];
}
- 2:第二种方法:(自定义创建的,创建出来的对象要使用addTimer:forMode方法手动加入主循环池中,才可执行循环)
eg:
NSTimer * timer = [NSTimer timerWithTimeInterval:1 target:self selector:@selector(action:) userInfo:nil repeats:NO];
……….
- 3:第三种方法:(定制好的,会自动执行且自动加入主循环池中)
eg:
NSTimer * timer = [NSTimer scheduledTimerWithTimeInterval:1 invocation:invo repeats:YES];
- 4:第四种方法:(定制好的,会自动执行且自动加入主循环池中)
eg:
NSTimer * timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(action:) userInfo:@"123" repeats:YES];
- 5:第五种方法:(需手动加入循环池,会在设定的启动时间启动)
eg:
NSTimer * timer = [[NSTimer alloc]initWithFireDate:[NSDate distantPast] interval:1 target:self selector:@selector(action:) userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop]addTimer:timer forMode:NSDefaultRunLoopMode];
网友评论