在cocos2d-js-v3.0 中使用cocostudio UI的正确方式
来源:互联网 发布:机房网络布线方案 编辑:程序博客网 时间:2024/05/17 23:51
用新版本cocos2d-js开发jsb的时候,发现cocos2dx js 找不到cocostudio json 中的图,无法加载cocostudio的UI,debug提示找不到图片。花了我两个多小时,才发现新api的bug。果断决定写个如何在cocos2d-js-v3.0 jsb 中使用cocostudio UI的博客,分享出来!
bug原因:cocostudio的ExportJson中并没有对导出文件的plist和png进行描述,也没有在解析加载中提供处理及异常处理。
方案:手动添加plist的预加载,不需要预加载png,因为plist中有对png的描述。
建议:引擎对该错误提供正确信息,应该提示”没有加载cocostudio项目文件“,或者干脆智能的加载了。
下面是代码:
1、在新项目的根文件夹下打开project.json文件,修改:
- "modules" : ["cocos2d", "extensions", "external"]//作用是增加需要用的的模块
2、加载,范例demo和helloworld都写在resource.js里面:
- var CocosUI = "res/CocosUI.ExportJson";//网上很多帖子这个地方写的文件后缀依然是json,不谨慎啊!
- var CocosUI_plist = "res/CocosUI.plist";//最重要的一句,错误的根源,其他版本教程都没有写这句,都是坑人的,事实上没有这是运行不了解的。
- var res = {
- HelloWorld_png : "res/HelloWorld.png",
- CloseNormal_png : "res/CloseNormal.png",
- CloseSelected_png : "res/CloseSelected.png",
- };
- var g_resources = [
- //image
- res.HelloWorld_png,
- res.CloseNormal_png,
- res.CloseSelected_png,
- //json
- CocosUI_plist,//重要:在预加载中加载ui,根据经验将plist加载放在json前面
- CocosUI
- ];
3、main.js
- cc.game.onStart = function(){
- cc.view.setDesignResolutionSize(640, 960, cc.ResolutionPolicy.SHOW_ALL);
- cc.view.resizeWithBrowserSize(true);
- //load resources
- cc.LoaderScene.preload(g_resources, function () {
- cc.director.runScene(new HelloWorldScene());
- }, this);
- };
- cc.game.run();
4、业务程序中使用,一般在layer的初始化中:
- var ui = ccs.uiReader.widgetFromJsonFile(CocosUI);
- this.addChild(ui, 100);//100是z轴,表示放在最上面
大功告成,可以使用cocostudio了。
0 0
- 在cocos2d-js-v3.0 中使用cocostudio UI的正确方式
- 在cocos2d-js-v3.0 中使用cocostudio UI的正确方式
- 在cocos2d-js-v3.0 中使用cocostudio UI的正确方式
- cocostudio 生成的ui用在 cocos2d js
- cocos2d-x v3.0beta2使用cocostudio制作的动画
- cocos2d-x中使用cocostudio制作的场景或UI
- cocostudio中UI动画的程序调用coco2dx v3.2
- cocos2d-x & CocoStudio UI使用
- cocos2d-js的UI用cocoStudio结合开发笔记
- 在cocostudio的ui中嵌入CCEditBox
- Cocos2d-x3.0 从代码中获取cocostudio编辑的UI控件
- cocos2d-js中使用cocostudio中的帧动画
- Cocos2d-JS项目之二:cocostudio基础控件的使用
- CocoStudio UI 编辑器的使用
- 在 vs 里面使用cocostudio 制作的UI
- 在Cocos2d-x3.0中添加CocoStudio功能库
- Cocos2d-x 3.0 开发(四)使用CocoStudio创建UI并载入到程序中
- Cocos2d-x 3.0 开发(四)使用CocoStudio创建UI并载入到程序中
- BUPT Summer Journey #test8 E
- 11g的延迟段功能
- 值—结果参数详解
- using namespace std
- AFNetworking2.5使用
- 在cocos2d-js-v3.0 中使用cocostudio UI的正确方式
- Windows 7下DotProject环境搭建及其安装
- 基于 OpenFlow 实现网络虚拟化
- HTML5播放器MediaElement.js用法
- 杭电1003 Max Sum
- ios不可改变NSString类和可改变NSMutableString类的使用
- div+css 百分比进度条
- 读取Jar包中的资源问题探究
- 让windows cmd也用上linux命令