前段时间刚刚接触quick 2.2.5,就跟着网上教程入门学习。现在就来踩3.3rc0的坑,在写UI的时候,发现2.2.5的ui.xxxx那套API不能用了,都是cc.ui.UIxxx.new格式的。。。
不能用的UI系统:
这很纠结,就去查了下资料.
在CocoaChina 开发讨论区发现了一篇文章http://www.cocoachina.com/bbs/read.php?tid=208474,说现在 quick 里实际上有三套 UI 系统,在 quick v3 中,将只提供一套纯脚本实现的 UI 库。就是cc.ui.UIxxx.new这套:
然后我就去看了源码,找到framework/init.lua文件,发现了quick 2.2.5 与quick 3.3rc0的一个不同之处(其他的我没去看):
2.2.5的如下:
3.3rc0的如下:
看见LOAD_DEPRECATED_API这个是不是很熟悉,熟悉就对了!在每个创建的新项目里,有个config文件,都有这个字段,作用:是否载入过时的 API 定义,默认为 false.
所以到这就很明白了,在quick 3.3rc0中,默认没有加载ui.xxx这套模块,想要使用,LOAD_DEPRECATED_API设置为true即可。个人建议还是不要修改,就使用quick 3.3rc0提供的这套,方便而且不容易搞混淆。相信大家在用quick 2.2.5的时候,看到3套ui系统混合使用都可以把自己搞迷糊。
就写这么多,见笑了!
今天是我写的第一篇文章,开始写文章是为了记录自己学习过程中的遇见的问题。如有不足之处,请大家指出,一起交流成长!
希望以后能多写文章!(工作忙,大家都懂得。。。)