加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

cocostudio脚本绑定

发布时间:2020-12-14 19:10:11 所属栏目:百科 来源:网络整理
导读:--[[ cocostudio绑定 @param widget 从json解析出来的uiwidget @param scene 要绑定到的对象(注,是对象,不是类) 用法: self.pWidget = GUIReader:shareReader():widgetFromJsonFile("res/display/display.json") bind(self.pWidget,self) 执行绑定之后

--[[

cocostudio绑定

@param widget 从json解析出来的uiwidget

@param scene 要绑定到的对象(注,是对象,不是类)

用法:

self.pWidget = GUIReader:shareReader():widgetFromJsonFile("res/display/display.json")

bind(self.pWidget,self)


执行绑定之后,可以使用self.btnName来访问有name属性的对象(不知道是否需要tolua.cast为目标类型)

在被绑定到的对象的类中,如果有对应的click方法,则会自动绑定例如MainScene:btnNameClick

]]

function bind(widget,scene)

local node = nil

CCARRAY_FOREACH(widget:getChildren(),node)

{

if (node:getName() ~= nil and node:getName() ~= "") then

scene[node:getName()] = node --字段绑定,只要有name的就绑

if type(scene[node:getName() .. "Click"]) == "function" then

node:addTouchEventListener(handler(scene,scene[node:getName() .. "Click"]) --事件绑定,约定事件名为按钮name加上Click

end

end

bind(node,scene) --递归绑定

}

end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读