quick3.3rc0 cocostudio各种控件接口怎么没了?

以前使用quick2.2.5,里头用到cocostudi1.6,总共会用到,button(事件,以及图片更改loadtexturenormal等),label(设置文本获取文本,当让包括数字标签和fnt标签了),image view(设置图片loadtexure)。

但如今我换了3.3rc0(别说final,估计是一个样的,所以别跟我说换到最新),label接口改称setString了这个还好,猜一下出来了,btn的由于大家比较关注,所以事件的也搞定了。
图片imagview的,我看了下c++部分,loadTexture接口还有,但是,在程序里告诉我这个接口为nil!!!

这是怎么回事啊?

看了下sample,真是可笑,ccsloader的例子,就是那么一丁点,既然接口可能改变,能不能在sample里将大家常用的接口列一遍显示一下啊(比如我上头提到的)。

quick3.3开始,对ccs的ui部分的确没有裁剪掉的,

imageview的loadTexture接口也是导出了的
可以全局搜lua_register_cocos2dx_ui_ImageView来确认

ccsloader其实有两部分
第一部分用的是cc.uiloader,用它解析出来的是quick的纯ui控件(csb文件除外,它解析出来还是ccs的控件)
第二部分就是直接用ccs的接口解析json文件,出来的肯定也是ccs的控件

— Begin quote from ____

引用第1楼htlxyz于2015-01-06 15:16发表的 :
quick3.3开始,对ccs的ui部分的确没有裁剪掉的,

imageview的loadTexture接口也是导出了的
可以全局搜lua_register_cocos2dx_ui_ImageView来确认

http://www.cocoachina.com/bbs/job.php?action=topost&tid=280345&pid=1214795

— End quote

我查了下,的确导出了,但是怎么使用都是找不到,我使用tolua.cast(node,“cc.ui.ImageView”),提示cast成功了,因为不为nil。但我使用这个也无法找到函数。

之前我试了下转型ccui.ImageView没有成功,转别的也没有成功(比如cc.Sprite,因为我本来猜测quick解析了json但使用了自己的控件)。看来它还是使用原生的ccs的控件创建的ui,可是为何找不到函数呢?

不容易啊,找到原因了。
quick3.3,cc.uiloader对于cocostudio1.6以及之前的json都直接解析为自己的控件。
需使用这些控件的函数。
这里由于UIImage就是Sprite,所以直接使用sprite的函数即可。但。。。

但,我要说但是,之前我根据以前的使用方式,使用setDisplayFrame进行设置,然后提示没有这个函数,因此我就忽略了这是sprite。

原因是,3.0之后这个函数已经辈淘汰需使用setTexture。

因此使用 node:setTexture(“xxx.png”)就可以替换图片了。