schedule的作用类似于window下的onTimer(),设置定时器。
一、设置定时器自定义的函数响应
schedule(schedule_selector(SpriteFrameTest::startIn05Secs), 0.5f);
函数功能:每隔0.5s,调用一次startIn05Secs函数
二、取消定时器
unschedule(schedule_selector(SpriteFrameTest::startIn05Secs));
三、定时器管理器CCSchedule
CCScheduler::sharedScheduler()->pauseTarget(this); // 暂停当前对象所有的定时器
->resumeTarget(this); // 恢复当前对象所有的定时器
->unscheduleAllSelectors(); // 取消所有的定时器,CCNode的会取消当前节点的定时器
四、scheduleUpdate()默认定时器
scheduleUpdate();
Test::update(ccTime dt)
{
// 将会执行
}
unscheduleUpdate();
加入当前节点后,程序会每帧都会自动执行一次默认的Update函数。(注:一定是Update函数哦,若想调用其他自己命名的函数则使用schedule看例子,走起,首先在HelloWord类的头文件中声明Update函数 void Update(float dt); //注意参数类型
然后在HelloWorld类源文件中实现函数Update:
void HelloWorld::Update(float dt)
{
CCLOG("baibai");
}
现在我们可以调用了,在需要他不断执行的地方加入调用的代码就ok:
this->scheduleUpdate(); //this是当前节点,如layer,所以可以省略啦。</span>
运行之后你将会看到不断有baibai被打印出来
五、取消默认定时器
unscheduleUpdate();