第一步 新建工程在Publish Setting 中设置
在publish Setting 界面
标签1处作用为了在多端适配点击后会自动帮我们生成一些缩小后的图片用于其他终端,因为这边我直接在程序里用代码缩小图片所以不设置。此处的图片在ccb中是放在resources-auto文件夹中,勾选下列选项后导出后会对应勾选项导入不同的配置文件夹中不勾选则不进行压缩处理
标签2处选中后ccbi publising会删除路径只会保存文件名(百度,自己没试验过)
注:在第三个Only publish ccb-files 勾选后只导出ccbi文件,ccbresouces这个文件夹不会导入我们的工程要自己手动复制进入(经过试验,及时不勾选,在我们第一次publishing后对ccbresouces中的资源进行删除,再次publishing,我们项目中的ccb资源没有更改,可见cocosbulider只对资源增加不对其删除)
第二步 选中一个ccb 在Document中把js管理去掉,用自定义类去管理这个ccb
点击CCLayer定义我们自己项目中的类名
如果要对项目中某个node进行绑定一定要选中root项
第三步 项目代码绑定ccbi
add file ccb文件夹(ccbi文件及ccbResources文件夹)
addfile有两个选项,一个是group(黄色),一个是refrences(蓝色 在项目中需要添加对应路径 推荐可以和android兼容)
显示ccbi的代码
//初始化节点加载器
CCNodeLoaderLibrary *nodeLoader=CCNodeLoaderLibrary::sharedCCNodeLoaderLibrary();
//获取CCBReader去读取ccbi文件
CCBReader *ccbReader=new CCBReader(nodeLoader);
//只显示界面可以不添加,这句话用来绑定对应的界面元素和事件
nodeLoader->registerCCNodeLoader("MainScene", MainSceneLoader::loader());
//读取ccbi并绑定到我们自定义的类中
mainScene=dynamic_cast<mainscene>(ccbReader->readNodeGraphFromFile("ccb/MainScene.ccbi"));
this->addChild(mainScene);
//最后销毁掉,别浪费资源以免内存泄露
ccbReader->release();
</mainscene>
在项目中管理动画的代码
</pre><p class="p2"></p><p class="p1"></p><p></p><pre name="code" class="cpp">//获得动画管理器
CCBAnimationManager* animationManager = (CCBAnimationManager *)mainScene->getUserObject();
//设置动画结束后的回调方法
animationManager->setAnimationCompletedCallback(this,callfunc_selector(HelloWorld::CCBCallBack));
//执行时间线
animationManager->runAnimationsForSequenceNamed("Timeline1");