iOS开发进阶iOS Developer

iOS NSTimer的简单使用

2017-07-03  本文已影响41人  骑马纵天下
 /**
定时器的使用
@param Interval 定时器的时间间隔
@param target   用在哪  一般self
@param selector  选择器(方法)
@param userInfo  传递参数
@param repeats  是否重复
@return
 *///每秒执行一次time方法
NSTimer *time = [NSTimer scheduledTimerWithTimeInterval:1.0f target:self selector:@selector(time) userInfo:nil repeats:YES];
写法一
/ 启动定时器 
 timer.fireDate = [NSDate distantPast];    
//停止定时器 
timer.fireDate = [NSDate distantFuture];
写法二
 // 开启 
 [time setFireDate:[NSDate  distanPast]]
 // 关闭  
[time  setFireDate:[NSDate  distantFunture]]
//停止
[NSTimer invalidate]
当repeats等于YES时记得在视图即将消失的时候把NSTimer停止
如果不把NSTimer停止 它就会一直执行这个View不会消失
不能用dealloc原因 NSTimer一直存在 View的引用计数一直都有 所以不会调用dealloc所以需要我们在视图消失时停止NSTimer
- (void)viewWillDisappear:(BOOL)animated{
    [super viewWillDisappear:animated];
    [_time invalidate];
    
}
上一篇下一篇

猜你喜欢

热点阅读