cocos2d 问题记录
本人新手,学习过程中的问题逐渐记录下来
【cocos2.x和cocos3.x的区别】
从3.x开始官方重写了很多方法原有2.x中CC开头的类全都去OC化(Object-C)
如果使用CC的方法编译时候就会提示这些方法已经被废弃了
【关于声音的问题】
AppDelegate.cpp文件中注释的声音控制去掉双引号后报错
SimpleAudioEngine::getInstance()->resumeBackgroundMusic();
需要在顶部加入以下命名空间
usingnamespaceCocosDenshion;
或者直接写
CocosDenshion::SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();
【关于Lable】
因为LabelTTF这个类本身就被Deprecated了,所以它的成员函数当然也被Deprecated了。
可以用Label::createWithTTF或Label::createWithSystemFont()来创建Label
【NodeReader和GUIReader报错】
首先引入
#include"editor-support/cocostudio/CCSGUIReader.h"
我们先来看下Cocos2d-x加载CocosStudio导出的UI的两种加载方式。
第一种:使用NodeReader加载
autonode=cocostudio::timeline::NodeReader::getInstance()->createNode("test.ExportJson");
第二种:使用GUIReader加载
GUIReader::getInstance()->widgetFromJsonFile("test.ExportJson");
总结:
windows下的CocosStudio生成的文件,需要使用GUIReader加载
Mac平台下的CocosStudio生成的文件,则需要使用NodeReader加载
原因是Mac版和CocosStudio版本同时存在,但是由于Mac版本为1.0.0,导出的文件是有根节点Node的。而windows版本导出的实际上是个Panel。所以需要两种不同的读取方法。
来源:http://www.tuicool.com/articles/aqM7Nzq
对比例子仅作参考
automyLayout=cocostudio::GUIReader::shareReader()->widgetFromJsonFile("aa.ExportJson");
Node*UI=cocostudio::timeline::NodeReader::getInstance()->loadNodeWithFile("aa.ExportJson");
这个貌似被废弃了。。。
.ExportJson格式的文件都是cocos1.x的文件,2.x用的是csb
这种文件实际就是为了创建UI界面用的,随着函数被废弃,貌似这个也就不再用了。
这里说的1.x和2.x不是cocos2d-x,说的是cocos-studio编辑器的版本
cocos2d-x3.9时候对应的cocos是2.3.3.0版本
相关推荐
进入场景而且过渡动画结束时候触发。提示 GameScene场景中的继承于节点,这些生命周期事件根本上是从Node继承而来。事实上所有Node对象都有这些事件,具体实现代码与GameScene场景类似。