本文使用cocos2d-x 2.1.2版本。

用cocosbuilder3 alpha2版本。

分两步走:

第一步:

1,新建一个cocosbuilder工程。默认创建Hello CocosBuilder的MainScene

2,不改动任何内容,publish到对应的工程资源目录下,参考以下运行:

MainScene.h

#include "cocos-ext.h"
USING_NS_CC_EXT;
USING_NS_CC;class MainScene:public CCLayer{
public:static CCScene* scene();
};

MainScene.cpp:

#include "MainScene.h"CCScene* MainScene::scene()
{CCScene *scene = CCScene::create();CCNodeLoaderLibrary *lib = CCNodeLoaderLibrary::newDefaultCCNodeLoaderLibrary();//lib->registerCCNodeLoader("MainScene", MainSceneLayerLoader::loader());CCBReader *reader = new CCBReader(lib);CCNode *node = reader->readNodeGraphFromFile("MainScene.ccbi", scene);reader->release();if (node!=NULL){scene->addChild(node);}return scene;
}

此时基本无问题,都能运行起来。

3,替换或加几个控件,很可能出现程序启动的时候又找不到图片资源的错误,请参考 http://blog.csdn.net/luxiaoyu_sdc/article/details/8849854

至此,界面加载问题解决完毕。

第二步:实现cocosbuilder的动态绑定。

1,自定义类绑定

class MainSceneLayerLoader : public cocos2d::extension::CCLayerLoader
{
public:CCB_STATIC_NEW_AUTORELEASE_OBJECT_METHOD(MainSceneLayerLoader, loader);
protected:CCB_VIRTUAL_NEW_AUTORELEASE_CREATECCNODE_METHOD(MainScene);
};

2,属性绑定

public cocos2d::extension::CCBMemberVariableAssigner
virtual bool onAssignCCBMemberVariable(CCObject* pTarget, const char* pMemberVariableName, CCNode* pNode) = 0;
virtual bool onAssignCCBCustomProperty(CCObject* pTarget, const char* pMemberVariableName, CCBValue* pCCBValue) { return false; };

3,成员变量绑定

public cocos2d::extension::CCBMemberVariableAssigner
virtual bool onAssignCCBMemberVariable(CCObject* pTarget, const char* pMemberVariableName, CCNode* pNode) = 0;
virtual bool onAssignCCBCustomProperty(CCObject* pTarget, const char* pMemberVariableName, CCBValue* pCCBValue) { return false; };CCB_MEMBERVARIABLEASSIGNER_GLUE(this, "mLabelText", CCLabelBMFont*, this->mLabelText);
CCB_MEMBERVARIABLEASSIGNER_GLUE(this, "mTitleLabelTTF", CCLabelTTF*, this->mTitleLabelTTF);// 在初始化函数中调用
public cocos2d::extension::CCNodeLoaderListener
virtual void onNodeLoaded(CCNode * pNode, CCNodeLoader * pNodeLoader) = 0;
void MainScene::onNodeLoaded(cocos2d::CCNode *pNode, cocos2d::extension::CCNodeLoader *pNodeLoader)
{this->mLabelText->setString("All Loaded");
}

4,菜单事件绑定

public cocos2d::extension::CCBSelectorResolver
virtual SEL_MenuHandler onResolveCCBCCMenuItemSelector(CCObject * pTarget, const char* pSelectorName) = 0;
virtual SEL_CCControlHandler onResolveCCBCCControlSelector(CCObject * pTarget, const char* pSelectorName) = 0;CCB_SELECTORRESOLVER_CCMENUITEM_GLUE(this, "onPressA", MenuLayer::onPressA);
CCB_SELECTORRESOLVER_CCMENUITEM_GLUE(this, "onPressB", MenuLayer::onPressB);

5,控制按钮绑定

public cocos2d::extension::CCBSelectorResolver
virtual SEL_MenuHandler onResolveCCBCCMenuItemSelector(CCObject * pTarget, const char* pSelectorName) = 0;
virtual SEL_CCControlHandler onResolveCCBCCControlSelector(CCObject * pTarget, const char* pSelectorName) = 0;CCB_SELECTORRESOLVER_CCCONTROL_GLUE(this, "onButtonTest", MainScene::onButtonTest);

稍后给出运行例子截图和相关说明。

cocosbuilder详细使用教程相关推荐

  1. mysql为什么每天0点就装东西_MySQL的详细安装教程

    1.安装之前需要注意的几点 建议不要安装最新版本,一般找mysql5.0系列版本即可: mysq1官网有.zip和.msi两种安装形式: zip是压缩包,直接解压缩以后使用的,需要自己配置各种东西:m ...

  2. mysql windows 管道连接,科技常识:Windows Server 2016 MySQL数据库安装配置详细安装教程...

    今天小编跟大家讲解下有关Windows Server 2016 MySQL数据库安装配置详细安装教程 ,相信小伙伴们对这个话题应该也很关注吧,小编也收集到了有关Windows Server 2016 ...

  3. python安装了运行不了_python详细安装教程

    本章开始,我们将详细介绍Python编程环境的搭建,工欲善其事必先利其器,所以我们这里先介绍python详细安装教程.由于Python是跨平台的,他可以运行在Windows.Linux.Mac等系统上 ...

  4. truffle详细使用教程

    详细使用教程 选择以太坊客户端 编译智能合约 运行迁移 测试智能合约 用 JavaScript 编写测试脚本 编写 Solidity 测试脚本 与智能合约交互 使用 EthPM 包管理工具 调试智能合 ...

  5. Apache的详细安装教程和遇到的问题解决方案

    Apache的详细安装教程和遇到的问题解决方案 参考文章: (1)Apache的详细安装教程和遇到的问题解决方案 (2)https://www.cnblogs.com/jave1ove/p/54864 ...

  6. centos7 查看ip_VMware安装CentOS 7操作系统详细操作教程(网络配置)

    网络配置,输入vi /etc/sysconfig/network-scripts/,按下Tab键,根据提示,输入ifcfg-eno16777736,按下Enter键,如下图所示: 图 1 网络配置-1 ...

  7. htc one m7刷Linux,HTC one m7官方刷机详细操作教程

    由于很多软件功能都需要手机进行刷机,所以入手HTC one m7新机的用户一定想着如何刷机.下面就来教你HTC one m7官方刷机的详细操作教程! 准备事项: 1.手机必须能用usb数据线电脑,因为 ...

  8. apache mysql 连接数 winnt,APACHE PHP MYSQL PHPMYADMIN超详细配置教程

    Apache+PHP+MySQL+phpMyAdmin超详细配置教程 安装之前需要下载 Apache2.0.59 PHP4.4.4Win32 MySQL4.12 phpMyAdmin2.9.1.1rc ...

  9. python详细教程-python入门(非常详细的教程)

    对于初学者而言,您要做的只是专注于Python语言,阐明学习重点,掌握学习节奏,并逐步学习.根据我多年的学习和工作经验,编程语言的学习分为以下三个步骤,无论您是否具有编程基础,都可以通过比较来完成. ...

最新文章

  1. php的引用变量与销毁机制
  2. C++ vector容器简单解释
  3. dart系列之:在dart中使用数字和字符串
  4. python爬虫面试问题_Python爬虫面试总结
  5. java环境变量设置与java查看安装路径
  6. 降本增效利器!趣头条Spark Remote Shuffle Service最佳实践
  7. SQL server 2008 中的五个系统数据库详解
  8. [转载] numpy.logspace和numpy.linspace区别对比
  9. 设置返回IOS开发(26)之UITableView的页眉和页脚
  10. RXJAVA之Subject
  11. VUE3+TS 生成一些五线谱
  12. 智慧医院解决方案如何落地 智慧医院解决方案实际应用
  13. 服务器上的文件夹丢失怎么办,快速找回丢失文件夹选项的简单办法
  14. html倒计时免费代码,JS倒计时代码汇总
  15. java将图片转化为base64码
  16. Guava base -- Splitter
  17. HyperAI超神经已加入群聊,思否 AIGC Hackathon 扩列
  18. Ubuntu16.04安装cello
  19. 数据库的增删查改(全部重点知识一篇整合,包括数据库查询的进阶内容)
  20. 使用Harr特征的级联分类器实现目标检测

热门文章

  1. J2EE基础教程(1):简介和windows下环境配置
  2. Mysql之常见可视化管理工具
  3. AnyLogic第二讲行人仿真空间逻辑讲解
  4. 俯仰 (pitch) - 偏摆 (yaw) - 翻滚 (roll)
  5. Sqlserver 修改字段长度
  6. python教程菜鸟教程学习路线
  7. 学生管理系统(Java版)
  8. 计算机论文提纲怎么写,计算机论文提纲
  9. python调用百度接口实现ocr识别_Python 3调用百度OCR API实现剪贴板文字识别
  10. 下载好python后,怎么打开,python怎么进入编程界面