定时器在iOS中是非常常用的功能,简单的介绍一下基本的使用方法。
初始化:
_timer = [NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(scrollSetUp) userInfo:nil repeats:YES];
注:不用scheduled方式初始化的,需要手动addTimer:forMode: 将timer添加到一个runloop中。
而scheduled的初始化方法将以默认mode直接添加到当前的runloop中.
注意:将计数器的repeats设置为YES的时候,self的引用计数会加1。因此可能会导致self(即viewController)不能release,所以,必须在viewWillAppear的时候,将计数器timer停止,否则可能会导致内存泄露。
启动定时器:
//启动定时器 _timer.fireDate=[NSDate distantPast];
定时器暂停(短暂的失效):
[_timer setFireDate:[NSDate distantFuture]];//定时器暂时失效
定时器永久性失效:
[_timer invalidate];//定时器必须失效 不然影响内存释放 _timer = nil;
停止timer的运行,但这个是永久的停止:(注意:停止后,一定要将timer赋空,否则还是没有释放。不信?你自己试试~)!