在多个场景切换时候场景的生命周期会更加复杂。这一节我们介绍一下场景切换生命周期。
多个场景切换时候分为几种情况
情况1使用pushscene函数从实现helloworld场景进入setting场景。
情况2使用replacescene函数实现从helloworld场景进入setting场景。
情况3使用popscene函数从实现setting场景回到helloworld场景。
我们参考helloworld重写setting层的中几个生命周期函数代码如下
情况1时候它的调用顺序如下图所示。
情况2时候它的调用顺序如下图所示从图中可见与上面不同是多出helloworld中cleanup函数这也说明replacescene函数会释放场景对象。
情况3时候它的调用顺序如下图所示从图中可见popscene函数时候调用setting中cleanup函数这说明popscene函数会释放setting场景对象当回到helloworld场景时候并不会调用init()函数而是调用onenter函数。
更多内容请关注最新cocos图书《cocos2d-x实战 c++卷》
欢迎加入cocos2d-x技术讨论群257760386
《cocos2d-x实战 c++卷》现已上线各大商店均已开售
《cocos2d-x实战 c++卷》源码及样章下载地址
欢迎关注智捷ios课堂微信公共平台