- voidupdate(floatdt);//注意参数类型
voidHelloWorld::update(floatdt)
{
CCLOG("baibai");
}
现在我们可以调用了,在需要他不断执行的地方加入调用的代码就ok:
@H_404_0@
@H_404_0@
this->scheduleUpdate();//this是当前节点,如layer,所以可以省略啦。
@H_404_0@
@H_404_0@ 运行之后你将会看到不断有baibai被打印出来
2、scheduleUpdate
@H_404_0@ 可以没隔几秒执行某个自定义的函数,来看代码:
@H_404_0@ 首先还是在HelloWorld中声明所要执行的函数:
@H_404_0@
voidMove(floatdt);
然后在源文件实现:
@H_404_0@
@H_404_0@
voidHelloWorld::Move( }
@H_404_0@ 现在去执行他,注意参数哦
@H_404_0@
scheduleOnce(schedule_selector(HelloWorld::Move),1.0f);//每隔1.0f执行一次,省略参数则表示每帧都要执行
@H_404_0@ 运行之后,baibai每隔1.0f才会被打印一次。
@H_404_0@ 3、scheduleOnce
@H_404_0@ 功能:在几秒之后执行,并且只会执行一次。
@H_404_0@ 我们就执行上面所写的Move函数吧。
@H_404_0@
this->scheduleOnce(schedule_selector(HelloWorld::Move),0); background-color:inherit">//在1.0f之后执行,并且只执行一次。
运行一下,baibai只是被打印了一次就完了。。。
@H_404_0@
@H_404_0@ ok,定时器的调用已经讲完了,大家不妨自己写一些函数体验一下。
@H_404_0@ 但是怎么停止定时器呢?
@H_404_0@ 1、停止执行自己定义的函数定时器:
@H_404_0@
this->unschedule(schedule_selector(HelloWorld::Move));
2、停止默认定时器:
@H_404_0@
@H_404_0@
this->unscheduleUpdate();
3、停止所有定时器:
@H_404_0@
@H_404_0@
this->unscheduleAllSelectors();
@H_404_0@ 好啦,定时器是不是很有趣呢?大家试着使用一下吧