第一屏必须:
auto scene = GameMenu::createScene();
director->runWithScene(scene);
然后是主场景:
auto scene = MainScene::createScene();
Director::getInstance()->replaceScene(scene);
再回来第一屏:
auto scene = GameMenu::createScene();
director->replaceScene(scene);
结论:2dx的replaceScene会
先init新场景然后再remove旧场景
今天就碰到个在主场景里调用了_eventDispatcher->removeEventListenersForType(EventListener::Type::TOUCH_ONE_BY_ONE);结果第一屏幕的场景不接受touch事件了。
auto scene = XXScene::create();
的时候应该就执行init了,
之后才replaceScene
的时候应该就执行init了,
之后才replaceScene
添加监听写写onEnter里面一般