博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Cocos2d-x 3.2 与 Cocos studio 之间不得不说的神坑
阅读量:7042 次
发布时间:2019-06-28

本文共 994 字,大约阅读时间需要 3 分钟。

Get from:

Thanks the guy going ahead!!!

Original contents are as below:


很久没写博客了,最近项目需要用到Cocos2d-x来做客户端的开发。由于本人之前没有做过Cocos2d-x,所以以下内容可能比较片面,有什么不对之处,还请高手赐教。

 

这个问题可能对于使用Cocos2d-x很久的人并没有什么,但是会把我这种新手坑的找不到北。。。。

 

我要说的是关于使用CocosStudio UI编辑器导出的东西在程序中使用的问题。

 

截止2014年9月4日,CocosStudio 发布了windows版的1.6 和 Mac 版的 1.0.0 beta。

 

以我的理解,虽然两个平台版本不一样,但是在程序中的使用至少应该没太大区别吧。。。可是结果真的让我大跌眼镜。。。。

 

我们先来看下Cocos2d-x加载CocosStudio导出的UI的两种加载方式。

第一种:使用NodeReader加载

Cpp代码  

  1. auto node = cocostudio::timeline::NodeReader::getInstance()->createNode("test.ExportJson");  

 第二种:使用GUIReader加载

Cpp代码  

  1. GUIReader::getInstance()->widgetFromJsonFile("test.ExportJson");  

由于本人也是初学Cocos2d-x 3.2版本,所以这就不解释这两种加载方式的返回值及用法了。我们只针对CocosStudio在不同平台下生成的文件读取问题来探讨。

 

经过我的测试发现:

 windows 下的CocosStudio 生成的文件,需要使用GUIReader加载,如果使用NodeReader加载则会报错。

Mac 平台下的CocosStudio 生成的文件,则需要使用NodeReader加载,反之也会报错。

 

原因是虽然Mac版本和CocosStudio版本同时存在,但是由于Mac版本为1.0.0,导出的文件是有根节点Node的。而windows版本导出的实际上是个Panel。所以需要两种不同的读取方法。

 

在被这个问题困扰了长达6个小时之后终于搞清楚了。。。。

 

Cocos2d-x的坑还要继续填,希望本文可以让其他同学少走弯路。

 

非常感谢您的阅读。

转载地址:http://dstal.baihongyu.com/

你可能感兴趣的文章
《简明Python教程》学习笔记
查看>>
Fine Uploader文件上传组件
查看>>
POJ 3264 Balanced Lineup
查看>>
php_mcrypt.dll无法加载解决方法
查看>>
Semplice Linux 4 发布,轻量级发行版
查看>>
在android项目中R.java中失去id类怎么办
查看>>
Andorid时间控件和日期控件
查看>>
VC MFC中设置对话框的背景色、背景图片
查看>>
ios中tableview侧栏的折叠
查看>>
mahout贝叶斯算法开发思路(拓展篇)1
查看>>
如何用LinkedHashMap实现LRU缓存算法
查看>>
EXTJS AJAX解析XML数据
查看>>
android 向服务器上传
查看>>
mount umont
查看>>
PHP源码下载
查看>>
poj 2594Treasure Exploration(有向图路径可相交的最小路径覆盖)
查看>>
block 数组排序
查看>>
简析 addToBackStack使用和Fragment执行流程
查看>>
JAVA设计模式《一》
查看>>
第1章 初识java----输出多行的语句写法
查看>>