void HelloWorld::startMovingBackground() {
CCLog("startMovingBackground...");
if (isLeftPressed && isRightPressed) {
return;
}
CCLog("schedule..."); // OK.......................
this->schedule(schedule_selector(HelloWorld::moveBackground));
}
void HelloWorld::moveBackground(float f) {
CCLog("moveBackground %f", f); // NO....................
// Do move background...
}
Но функция moveBackground не называется. Помогите мне ...
======================================================================================================================================================= =================
кода (инициализация "HelloScene")
CCScene* HelloWorld::scene() {
CCScene * scene = NULL;
do {
scene = CCScene::create();
CC_BREAK_IF(! scene);
HelloWorld *layer = HelloWorld::create();
CC_BREAK_IF(! layer);
scene->addChild(layer);
} while (0);
return scene;
}
bool HelloWorld::init()
{
bool bRet = false;
do {
CC_BREAK_IF(! CCLayerColor::initWithColor(ccc4(255, 255, 255, 255)));
this->setTouchEnabled(true);
winSize = CCDirector::sharedDirector()->getWinSize();
this->setTouchEnabled(true);
this->createBackgroundParallax();
this->createArrowButtons();
bRet = true;
} while (0);
return bRet;
}
Сво работает отлично для меня .. Постарайтесь дать время наряду с методом. Или просто используйте schedUpdate() .. И используйте ваш метод обновления для перемещения фона ... Он отлично работает :) –
Попробуйте установить breakPoint в методе startMovingBackground(). Возможно, вы никогда не называли «расписание». – PeakCoder