schedule CCCallfunc CCCallfuncN CCCallfuncND
schedule(schedule_selector(HelloWorld::step), 1.0f); void HelloWorld::step(float dt) { CCLog("dt = %f", dt); //this->unschedule(schedule_selector(HelloWorld::step));
//不加这句,每1.0s调用一次 加上这句话,1.0s后调用且只执行一次 } schedule(schedule_selector(HelloWorld::step)); //先1.0秒之后执行一次,再每3.0秒执行一次共5次(注:如果最后一个参数为0的话会3.0秒执行6次) schedule(schedule_selector(HelloWorld::step), 3.0f, 5, 1.0f);
/* 1、CCCallFunc,回调,调用不带参数的函数: 2、CCCallFuncO,回调,O表示CCObject,CCCallFunco可以带CCObject参数的函数 3、CCCallFuncN,回调,N表示CCNode,表示可以传递Node*类型 4、CCCallFuncND,回调,ND表示CCNode和Data,可以传递对象本身和一个void*类型参数,void*表示可以是任意类型的参数 */ pSprite->runAction(CCSequence::create( CCMoveTo::create(3.0f, ccp(480,310)), CCCallFunc::create(this, callfunc_selector(HelloWorld::callfunc)), CCCallFuncO::create(this, callfuncO_selector(HelloWorld::callfuncO), CCInteger::create(2)), CCCallFuncN::create(this, callfuncN_selector(HelloWorld::callfuncN)), CCCallFuncND::create(this, callfuncND_selector(HelloWorld::callfuncND), (void*)2), NULL)); void callfunc(); void callfuncO( CCObject* data ); void callfuncN( CCNode* pSender ); void callfuncND( CCNode* pSender, void* pData );
Dreams are one of those things that keep you going and happy!!!