UI编辑器获取child的简化


        先大喊一声: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大法好啊!!!

你可能感兴趣的:(UI编辑器获取child的简化)