理解:
- 將cocoStudio的ui控件轉換成cocos的GUI控件來操作
- 通過widgetFromJsonFile()加載根容器Plane控件
- 通過Helper::seekWidgetByTag()尋找子控件
打開官方示例:我目前用的是V3.12
將class下所有的文件全部放到Sublime Text 3中:
- 查找文件CTRL+P:CocoStudio.h
- 發現底下有:UITtest.h
- 例子全在這下面了。
導入頭文件調用:(注意命名空間和強制類型轉換類型)
#include "cocos2d.h"
USING_NS_CC;
#include "editor-support/cocostudio/CocoStudio.h"
#include "ui/CocosGUI.h"
using namespace::ui;
using namespace cocostudio;
意類型轉換的類型必須一一對應,比如TextField就是TextField,不能轉換爲TextFieldTTF:
auto node = CSLoader::createNode("res/Login.csb");
this->addChild(node);
Button* pLoginBtn = dynamic_cast<Button*>(node->getChildByName("Button_Login"));
pLoginBtn->addClickEventListener(CC_CALLBACK_1(Login::LoginCallback, this));
m_pInput = dynamic_cast<TextField*>(node->getChildByName("TextField_1"));
m_pInput->addEventListener(CC_CALLBACK_2(Login::textFieldEvent, this));
這樣就OK了。