onenter专题

cocos2dx场景切换中init、onEnter、onEnterTransitionDidFinish的调用顺序

这些方法调用的先后顺序如下(使用 replaceScene 方法): 1. 第2个场景的 scene 方法 2. 第2个场景的 init 方法 3. 第2个场景的 onEnter 方法 4. 转场 5. 第1个场景的 onExit 方法 6. 第2个场景的 onEnterTransitionDidFinish 方法 7. 第1个场景的 dealloc 方

Cocos2dx-jsb 中Node的onEnter过程分析(2):

Cocos2dx-jsb 中Node的onEnter过程分析(2):上一篇我们分析了onEnter从C++端调到js端的过程,但是剩下一点没有分析,就是我们从JS调回到C++。6、到此为止,○1○2两部分都分析完了,那第○3部分,什么时候调用呢?第三部分的代码:_isTransitionFinished = false;for( const auto &child: _children)ch

Cocos2dx-jsb 中Node的onEnter过程分析(1)

Cocos2dx-jsb 中Node的onEnter过程分析(1):1、当一个子节点被接入到父节点上时,都会调用Node::addChild方法,if( _running ){child->onEnter(); //调用子节点的onEnter方法// prevent onEnterTransitionDidFinish to be called twice when a node is ad

在 往CCLayer里面加 Notification通知的时候,一定要加在OnEnter和OnExit里面

在 往CCLayer里面加  Notification通知的时候,一定要加在OnEnter和OnExit里面,不要加在init和 dealloc上面,因为 很多时候CCLayer是通过node方法产生的,在切换layer的时候,dealloc不一定会调用,这样会导致一个layer多次注册一个通知,这样导致,如果发送一个通知,会多次调用通知响应函数,导致问题,切记。    例子代码

cocos2dx之onEnter,onExit

在创建一个layer时,会自动调用到layer中的onEnter,在退出当前的layer时,会调用到onExit,在CCLayer中,有四个成员方法: void onExitTransitionDidStart();//2,创建完layer的时候调用,也就是1调用完之后调用void onEnter();//1,创建时调用void onExit();//3,退出当前layer的时候调用,