我是定时器第03章—真正的定时器之schedule
上一节介绍的”定时器”实在是有点不定时,这次我给大家介绍一个很定时的定时器。[cce_cpp]private: /* 自定义的update函数 */ void MutUpdate(float fDelta);[/cce_cpp]
同样在函数里打日志:[cce_cpp]void HelloWorld::MutUpdate( float fDelta ) { CCLOG("MutUpdate"); }[/cce_cpp]
然后我们要添加一句很暴力的代码:[cce_cpp]bool HelloWorld::init() { bool bRet = false; do { CC_BREAK_IF(! CCLayer::init());
//this->scheduleUpdate();
/* 指定每帧执行自定义的函数 */ this->schedule(schedule_selector(HelloWorld::MutUpdate)); bRet = true; } while (0);
return bRet; }[/cce_cpp]
我们使用schedule指定了一个自定义的函数,然后我们用调试模式运行项目,将看到以下输出:
MutUpdate
MutUpdate
MutUpdate
MutUpdate
MutUpdate
MutUpdate
MutUpdate
MutUpdate
我想,没有什么可以解释的,就是指定了一个回调函数。
(小若:其实他不懂。)
2. 真正的定时
好喇,我们要真正创建一个定时器了,我们修改一下schedule的参数就可以了:[cce_cpp]this->schedule(schedule_selector(HelloWorld::MutUpdate), 1.0f);[/cce_cpp]
第二个参数的意思是,每隔多少秒执行一次MutUpdate函数,记住,单位是秒。
还有一个更厉害的定时器,我忍不住要给大家介绍了!
(小若:好棒!)
请听下节分解。
(小若:你妹纸的!)