您好,登錄后才能下訂單哦!
cocos2dx 在多場景切換中,生命周期打印的效果如下:
從 MyScene 場景進(jìn)入,切換到 HelloWorld 場景,再推出 HelloWorld 場景,流程圖(見附件,,,,不知道怎么上傳圖片,不能粘貼圖,郁悶。。。)
打印 log 如下,
MyScene 代碼: MyScene::MyScene() { CCLog("wangss------------->MyScene"); } MyScene::~MyScene() { CCLog("wangss------------->~~MyScene"); } void MyScene::onEnter() { CCLog("wangss------------->onEnter"); Layer::onEnter(); } void MyScene::onEnterTransitionDidFinish() { CCLog("wangss------------->onEnterTransitionDidFinish"); } void MyScene::onExit() { CCLog("wangss------------->onExit"); Layer::onExit(); } void MyScene::onExitTransitionDidStart() { CCLog("wangss------------->onExitTransitionDidStart"); } void MyScene::cleanup() { CCLog("wangss------------->cleanup"); } Scene* MyScene::createScene() { CCLog("wangss------------->createScene"); auto scene = Scene::create(); auto layer = MyScene::create(); scene->addChild(layer); return scene; } bool MyScene::init() { CCLog("wangss------------->init"); if (!Layer::init()) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); Vec2 origin = Director::getInstance()->getVisibleOrigin(); // spriteTest(visibleSize); // labelTest(visibleSize); // menuTest(visibleSize); // languageTest(visibleSize); // scheduleTest(visibleSize); // scaleNineSpriteTest(visibleSize); // shujujiegouTest(visibleSize); // actionTest(visibleSize); // actionCallBackTest(visibleSize); // frameAnimationTest(visibleSize); // actionEaseTest(visibleSize); // progressActionTest(visibleSize); lifeCycleTest(visibleSize); return true; } HelloWorld 代碼: HelloWorld::HelloWorld() { CCLog("wangss------HelloWorld------->HelloWorld"); } HelloWorld::~HelloWorld() { CCLog("wangss------HelloWorld------->~~HelloWorld"); } void HelloWorld::onEnter() { CCLog("wangss------HelloWorld------->onEnter"); Layer::onEnter(); } void HelloWorld::onEnterTransitionDidFinish() { CCLog("wangss------HelloWorld------->onEnterTransitionDidFinish"); } void HelloWorld::onExit() { CCLog("wangss------HelloWorld------->onExit"); Layer::onExit(); } void HelloWorld::onExitTransitionDidStart() { CCLog("wangss------HelloWorld------->onExitTransitionDidStart"); } void HelloWorld::cleanup() { CCLog("wangss------HelloWorld------->cleanup"); } Scene* HelloWorld::createScene() { CCLog("wangss------HelloWorld------->createScene"); // 'scene' is an autorelease object auto scene = Scene::create(); // 'layer' is an autorelease object auto layer = HelloWorld::create(); // add layer as a child to scene scene->addChild(layer); // return the scene return scene; }
11-02 15:09:40.290: D/cocos2d-x debug info(23066): wangss------------->createScene
11-02 15:09:40.300: D/cocos2d-x debug info(23066): wangss------------->MyScene
11-02 15:09:40.300: D/cocos2d-x debug info(23066): wangss------------->init
11-02 15:09:40.320: D/cocos2d-x debug info(23066): wangss------------->onEnter
11-02 15:09:40.320: D/cocos2d-x debug info(23066): wangss------------->onEnterTransitionDidFinish
11-02 15:09:43.640: D/cocos2d-x debug info(23066): wangss------HelloWorld------->createScene
11-02 15:09:43.640: D/cocos2d-x debug info(23066): wangss------HelloWorld------->HelloWorld
11-02 15:09:43.640: D/cocos2d-x debug info(23066): wangss------HelloWorld------->init
11-02 15:09:43.760: D/cocos2d-x debug info(23066): wangss------------->onExitTransitionDidStart
11-02 15:09:43.760: D/cocos2d-x debug info(23066): wangss------HelloWorld------->onEnter
11-02 15:09:44.940: D/cocos2d-x debug info(23066): wangss------------->onExit
11-02 15:09:44.940: D/cocos2d-x debug info(23066): wangss------HelloWorld------->onEnterTransitionDidFinish
11-02 15:09:44.940: D/cocos2d-x debug info(23066): wangss------------->cleanup
11-02 15:09:44.940: D/cocos2d-x debug info(23066): wangss------------->~~MyScene
11-02 15:09:46.220: D/cocos2d-x debug info(23066): wangss------HelloWorld------->onExit
11-02 15:09:46.220: D/cocos2d-x debug info(23066): wangss------HelloWorld------->cleanup
11-02 15:09:46.220: D/cocos2d-x debug info(23066): wangss------HelloWorld------->~~HelloWorld
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。