cocos2dx中有三种定时器:schedule,scheduleUpdate,scheduleOnce。、
1、scheduleUpdate
程序会每帧都会自动执行一次默认的Update函数
首先在HelloWord类的头文件中声明Update函数:
void Update(float dt);
然后在HelloWorld类源文件中实现函数Update:
void HelloWorld::Update(float dt)
{
}
下面调用方式:
this->scheduleUpdate();
2、scheduleUpdate
首先还是在HelloWorld中声明所要执行的函数:
void printf(float dt);
然后在源文件实现:
void HelloWorld::printf(float dt)
{
}
调用方式:
scheduleOnce(schedule_selector(HelloWorld::Move), 1.0f); //每隔1.0f执行一次
3、scheduleOnce
功能:在自定义的秒数之后执行,并且只执行一次。
scheduleOnce(schedule_selector(HelloWorld::Move), 1.0f); //在1.0f之后执行,并且只执行一次。
停止定时器
1、停止执行自己定义函数的定时器:
this->unschedule(schedule_selector(HelloWorld::Move));
2、停止默认定时器:
this->unscheduleUpdate();
3、停止所有定时器:
this->unscheduleAllSelectors();