前段時間剛剛接觸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系統混合使用都可以把自己搞迷糊。
就寫這麼多,見笑了!
今天是我寫的第一篇文章,開始寫文章是爲了記錄自己學習過程中的遇見的問題。如有不足之處,請大家指出,一起交流成長!
希望以後能多寫文章!(工作忙,大家都懂得。。。)