定时器

CADisplayLink:时间间隔比较小(使用时间频率高)的时候用(适合小游戏中开发)

NSTimer:时间间隔比较大的时候调用(适合图片轮放的时候用)


//声明定时器

@property (nonatomic,strong) NSTimer *timer;

/**
* 添加定时器
*/
- (void)addTimer
{
self.timer = [NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(nextImage) userInfo:nil repeats:YES];
//NSRunLoop可以优先级处理些定时器(线程优先)
[[NSRunLoop currentRunLoop] addTimer:self.timer forMode:NSRunLoopCommonModes];
}

/**
* 移除定时器
*/
- (void)removeTimer
{
[self.timer invalidate];//设置定时器无效
    self.timer = nil;
}

调用代理时 定时器 事例:


#pragma  mark -代理方法

/**
当scrollView正在滚动就会调用 */
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
//根据scrollView的滚动位置决定pageControl显示第几页
CGFloat scrollW=self.scrollView.frame.size.width;
int page=(scrollView.contentOffset.x+scrollW*0.5)/scrollW;
self.pageControl.currentPage=page;
} /**
开始拖拽的时候调用
*/ -(void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
//停止定时器(一旦定时器停止了,就不能再使用)
[self removeTimer];
} /**停止拖拽的时候调用*/
-(void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
//开启定时器
[self addTimer];
}

IOS 添加定时器(NSTimer)的更多相关文章

  1. [置顶] ios 时间定时器 NSTimer应用demo

    原创文章,转载请注明出处:http://blog.csdn.net/donny_zhang/article/details/9251917 demo功能:ios NSTimer应用demo .ipho ...

  2. IOS中定时器NSTimer的开启与关闭

    调用一次计时器方法: myTimer = [NSTimer scheduledTimerWithTimeInterval:1.5 target:self selector:@selector(scro ...

  3. 【转】iOS中定时器NSTimer的使用

    原文网址:http://www.cnblogs.com/zhulin/archive/2012/02/02/2335866.html 1.初始化 + (NSTimer *)timerWithTimeI ...

  4. iOS中定时器NSTimer的使用-备用

    1.初始化 + (NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelect ...

  5. 【转】IOS中定时器NSTimer的开启与关闭

    原文网址:http://blog.csdn.net/enuola/article/details/8099461 调用一次计时器方法: myTimer = [NSTimer scheduledTime ...

  6. 【转】 IOS中定时器NSTimer的开启与关闭

    原文网址:http://blog.csdn.net/enuola/article/details/8099461 调用一次计时器方法: myTimer = [NSTimer scheduledTime ...

  7. 蜗牛爱课- iOS中定时器NSTimer使用

    调用一次计时器方法: //不重复,只调用一次.timer运行一次就会自动停止运行 self.locationTimer = [NSTimer  target:self selector: @selec ...

  8. iOS中定时器NSTimer的使用/开启与关闭

      一.只调用一次计时器方法: //不重复,只调用一次.timer运行一次就会自动停止运行 myTimer = [NSTimer scheduledTimerWithTimeInterval:1.5  ...

  9. ios 中定时器:NSTimer, CADisplayLink, GCD

    #import "ViewController.h" #import "RunloopViewController.h" @interface ViewCont ...

随机推荐

  1. xshell连接不上

    1.排查道路通不通 ping  baidu.com   是否通畅,如果不通 2.排查DNS ping 223.5.5.5 地址解释是否通畅 3.是否有劫财劫色的 检查防火墙   selinux是否 关 ...

  2. python爬取抖音APP视频教程

    本文讲述爬取抖音APP视频数据(本文未完,后面还有很多地方优化总结) 公众号回复:抖音 即可获取源码 1.APP抓包教程,需要用到fiddler fiddler配置和使用查看>>王者荣耀盒 ...

  3. C语言一些易混淆的概念

    ①数组指针和指针数组 1. 数组指针用于指向一个数组,数组名是数组首元素的地址(数组名为数组首元素类型且指向首元素的指针,如int array[5] ,array为指向array[0]的指针且类型为i ...

  4. Sublime Text 3 3126 安装+注册码

    首先,到官网下载且安装,个人是安装版本的 https://www.sublimetext.com/3 接着,写入注册码.2016/11/26 亲测有效 —– BEGIN LICENSE —– Mich ...

  5. 通过id、classname定位元素,程序仍报找不到元素的原因

    很多人在用selenium定位页面元素的时候会遇到定位不到的问题,明明元素就在那儿,用firebug也可以看到,就是定位不到,这种情况很有可能是frame在搞鬼.我们知道了原因,你现在就解决问题.sw ...

  6. 学习ssm

    1.安装配置maven (1)在http://maven.apache.org/download.cgi下载apach-maven-3.5.4-bin.zip (2)将apach-maven-3.5. ...

  7. 下载,安装oracle数据库以及navicat连接数据库

    一.学习时所遇问题: 1.在下载之前以为oracle不是免费的,但是后来才知道oracle对于个人学习时是免费的,可以到官网下载安装.在下载时由于要注册oracle官网,所以尝试了好几遍,才成功下载o ...

  8. vue-cli构建的vue项目打包后css引入的背景图路径不对的问题

    使用vue-cli构建vue项目后,再打包遇到一个css引入的背景图片路径的问题,就是css代码中背景图片是根据相对路径来写的,如下图: 当使用npm run dev命令本地访问的时候,背景图片是正常 ...

  9. Golang常用数据结构(对照python)

    python golang init get set extend/update find index size loop list list l := list.New()   l.PushBack ...

  10. db2 存储过程参数传递--字段类型转换产生的问题

    修改之前的脚本 select count(*) from dbdk.dtdkg010 A left join DBDK.DTDKG070 D ON D.PAY_NO = A.PAY_NO LEFT J ...