Cocos2d-x 学习笔记–Cocos Studio UI加载

最近学习Cocos2D-x中,正好在amazon看到了钟迪龙的Cocos2d-x 3.x游戏开发之旅一书,毫不犹豫的掏银子买下开始学习。

其中学习到配合Cocos Studio设计UI并加载一节时,由于书中使用的是Cocos2d-x版本是3.0,我使用的是3.6,CocosStudio书中的版本是1.4,而现在的版本是2.3,所以发布资源的格式有所改变,默认发布的资源格式是csb,cocos导入的方式也有所不同。

直接使用书中的方式是无法编译成功的,于是百度之,找到了导入csb格式的方法。

以下代码是沿用书中代码修改而成,HelloWorldScene.h文件头部添加如下:

#include "ui\CocosGUI.h"

#include "editor-support\cocostudio\CocoStudio.h"

using namespace cocos2d::ui;

using namespace cocostudio;

HelloWorldScene.cpp文件中init函数内部引用UI文件的方式如下:

Node* main = CSLoader::createNode("MainScene.csb");
    
this->addChild(main);

此时按Ctrl + F5编译运行,就可以成功导入UI了。

还没有结束,此时引用UI内部控件的方式也改变如下:

Button* dBtn = static_cast<Button*>(main->getChildByName("dBtn"));
    
dImg = static_cast<ImageView*>(main->getChildByName("dImage"));
    
dBtn->addTouchEventListener(this, toucheventselector(HelloWorld::onTouch));

其中getChildByName中的参数就是在CocosStudio中设定的控件name,这样就可以正确的引用控件并添加事件了(onTouch为自定义Touch回调,读者自行添加,书中也有阐述,此处不表)

posted @ 2015-07-02 17:03  Dangolol  阅读(997)  评论(0编辑  收藏  举报