码迷,mamicode.com
首页 > 移动开发 > 详细

ios开发之oc-NSTimer计时器简单使用

时间:2016-03-11 22:28:52      阅读:504      评论:0      收藏:0      [点我收藏+]

标签:

在游戏开发中,很多时候会用到一定时间内自动干嘛的效果,比如每隔一秒自动增加一个元素。很显然,我就用到了。object-c中的NSTimer就能实现这种效果。

1.定义NSTimer

@property(nonatomic)NSTimer *MouseTimer;//计时器

--------------------------------------------------------------------------------------------------------------

2.初始化,同时指定它干什么

_MouseTimer=[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(MouseMove) userInfo:nil repeats:YES];

只要运行到这一句,他就开始周而复始的执行动作,知道我们让它停下来,下面是参数的大概解释:

scheduledTimerWithTimeInterval,指定每隔多久执行一次动作;

target,指定此计时器的结果反应给谁,指定目标;

selector,指定计时器每次执行的动作,这里MouseMove是我自己写的一个函数;

userInfo,传输发送的东西,发送的参数

repeats,设定定时器是否重复调用目标方法,即MouseMove。

--------------------------------------------------------------------------------------------------------------

 3.关闭定时器

在想让他停止时比如游戏结束,离开游戏界面的时候,就需要停止或关闭定时器。

停止:(ps:这就是为啥我把它定位全局变量了,因为在这个页面的任何地方都可以操作它)

[_MouseTimer setFireDate:[NSDate distantFuture]];

继续:

[_MouseTimer setFireDate:[NSDate date]];

关闭:(ps:invalidate只是很单纯的关闭了定时器,并没有释放资源。所以我们要自己释放资源。)

[_MouseTimer invalidate];//关闭计时器
_MouseTimer = nil;//释放资源

如此这般,就可以很好地控制游戏过程中的某些效果了。

 

ios开发之oc-NSTimer计时器简单使用

标签:

原文地址:http://www.cnblogs.com/Yongersblog/p/5267347.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!