Cocos2d-x 场景中的生命周期函数?
来源:互联网 发布:sql与mysql 编辑:程序博客网 时间:2024/04/27 19:48
在Cocos2d-x中有这么几个函数,非常的常见。
virtual bool init( );
virtual void onEnter( );
virtual void onEnterTransitionDidFinish( );
virtual void onExitTransitionDidStart( );
virtual void onExit( );
virtual void cleanup( );
这6个函数都是Node节点类中的虚函数,也就是说,它的子类可以重写这些函数。而且这些函数的执行有一定的顺序。
情况一:单个场景从初始化 –> 退出 过程
bool init(){
if(!Layer::init()){ //父类的总是要先执行
return false;
}
return true;
}
void onEnter( ){
Layer::onEnter( );
}
void onEnterTransitionDidFinish( ){
Layer::onEnterTransitionDidFinish( );
}
注意:没有执行onExitTransitionDidStart(),因为只有一个场景。
void onExit( ){
Layer::onExit( );
}
void cleanup( ){
Layer::cleanup( );
}
情况二:场景A 跳转到 场景B 【replaceScene】
B: bool init( );
A : onExitTransitionDidStart( );
B : void onEnter( );
A : void onExit( );
B : void onEnterTransitionDidFinish( );
A : void cleanup( );
情况三: 场景A 跳转到 场景B 【pushScene】
注意少了 void cleanup( );函数
B: bool init( );
A : void onExitTransitionDidStart( );
B : void onEnter( );
A : void onExit( );
B : void onEnterTransitionDidFinish( );
情况四: 从场景B 跳转到 场景A 【popScene】
注意没有 A: bool init( ); 因为不用初始化2次。
B: void onExitTransitionDidStart( );
B: void onExit( );
B : void cleanup( );
A: void onEnter( );
A : void onEnterTransitionDidFinish( );
0 1
- Cocos2d-x 场景中的生命周期函数?
- Cocos2d-x场景生命周期函数介绍
- Cocos2d-x场景生命周期函数介绍
- Cocos2d-x场景生命周期函数介绍
- Cocos2d-x 场景的生命周期
- cocos2d-x中的场景
- cocos2d-x的场景类和生命周期
- Cocos2d-x多场景切换生命周期
- Cocos2d-x多场景切换生命周期
- Cocos2d-x多场景切换生命周期
- cocos2d-x中的场景管理
- 【cocos2d-x + lua】生命周期函数
- cocos2d-x 场景里面常见的函数
- Cocos2d-x场景切换相关函数介绍
- Cocos2d-x场景切换相关函数介绍
- Cocos2d-x场景切换相关函数介绍
- Cocos2d-x游戏中的场景滚动
- 对于cocos2d-x中的场景切换
- C++上机实验3-4
- Spark的日志配置
- XFire入门示例
- spring 注解
- C语言—局部变量同名初始化问题
- Cocos2d-x 场景中的生命周期函数?
- 扣丁学堂笔记第25天百度地图
- UIColor *_color[5] UIColor数组
- 关于ARC中block的用法 及weak self等(持续更新)
- node使用buffer生成图片
- Rxjava学习笔记
- mysql数据库插入中文乱码或问号--解决历程
- Canvas绘制2D图像API列表
- NSDateFormatter 和 NSDateComponents 的用法