先大喊一声:LUA大法好!
我用cocosStudio,编辑器编辑好的界面导入之后,有一个很痛苦的事情,就是给每个要操作的child初始化。能用的函数有2个:getChildByName和seekWidget。
但是总有那种特别BT的界面,有几十个要初始化的child,不说几十个,就是十几个,写下来也很蛋疼。在我怒写了几个界面之后,我突然想到,为什么不能改变这一切呢。。。。。
理论依据:lua的类是table,lua的table是数组和hashtable,可以用任何东西做key,lua对象的属性,例如 self.a 其实是 self [ " a " ] 的语法糖。
那么理论上下面一段代码,就可以完全搞定这个事情了。。。
local children = rootNode:getChildren()
for i = 1,#children do
local name = children[i]:getName()
if name ~= "" and name ~= nil then
self[name] = children[i]
end
end
lua大法好啊!!!