本文主要介绍在IOS中使用NSTimer定时器的相关信息。希望这篇文章能帮到你,让你彻底了解这种方法的使用。有需要的朋友可以参考一下。
IOS 中NSTimer定时器的使用
NSTimery定时器主要用于定时执行指定的方法,比如:获取验证码的按钮倒计时;图片传送带计时。
1使用注意事项:
1.1倒计时时间间隔(时间单位为秒)
1.2指定的执行方法
1.3实现指定执行方法的对象
1.4是否重复?
对象2的内存管理和销毁
2.1使用“invalidate”方法停止。
2.2将对象设置为“零”
2.3特别是当返回到其他视图控制器时,你应该设置方法'-(void)viewwillgament:
(BOOL)animated '(注意:不能在方法'-(void)dealloc in setting)中停止计时器,并将其设置为nil。
//有效发布
- (void)视图将消失:(BOOL)动画
{
【超级视野will discover:动画】;
[定时器无效];
定时器=零;
}
//无效的版本
-(空)德洛克
{
[定时器无效];
定时器=零;
}
3 计时器启用关闭继续
3.1开始:
timer . firedate=[ns date distant past];
3.2停止:
timer . firedate=[ns date distant future];
3.3继续:
[timer setFireDate:[ns date]];
使用示例(倒计时):
三种实例化方法,对应级别的停止方法
方法1
//初始化后将执行实例化方法1。
if (self.timer==零)
{
self.time=10.0
//带参数
ns number * number=@(self . time);
self . timer=[n timer scheduledTimerWithTimeInterval:1.0 target:self selector:@ selector(count down:)userInfo:number repeats:YES];
//不必要的设置,实际设置为NSDefaultRunLoopMode模式。
[[NSRunLoop current unloop]add timer:self . timer forMode:NSRunLoopCommonModes];
}
//关闭定时器方法1
【自拍无效】;
self.timer=nil
方法2
//实例化方法2最初是后处理的,需要调用' setFireDate '才能执行。
if (self.timer==零)
{
self . timer=[n timer scheduledTimerWithTimeInterval:1.0 target:self selector:@ selector(count down:)userInfo:nil repeats:YES];
//不必要的设置,实际设置为NSDefaultRunLoopMode模式。
[[NSRunLoop current unloop]add timer:self . timer forMode:NSRunLoopCommonModes];
[self . timer setFireDate:[ns date distant future]];
}
self.time=10.0
[self . timer setFireDate:[ns date distant past]];
//关闭计时器方法2
[self . timer setFireDate:[ns date distant future]];
方法3
//初始化实例化方法3后,需要调用‘fire’开始执行。
if (self.timer==零)
{
self . timer=[n timer timerWithTimeInterval:1.0 target:self selector:@ selector(count down:)userInfo:nil repeats:YES];
//必须设置NSRunLoop线程池,否则无效。
[[NSRunLoop current unloop]add timer:self . timer forMode:NSRunLoopCommonModes];
}
self.time=10.0
【自拍火】;
//关闭定时器方法3
【自拍无效】;
self.timer=nil
如有任何问题,请留言或与本站社区讨论。感谢阅读,希望能帮到你。感谢您对本站的支持!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。