1.C++获取:
方法一: auto myLayout = cocostudio::GUIReader::getInstance()->widgetFromJsonFile("testUI.json"); this->addChild(myLayout); Button* loginBtn = (Button*)(myLayout->getChildByName("login")); 方法二:Button* testBtn = (Button*)(Helper::seekWidgetByName(myLayout,"TestButton")); lua获取方法一:local myLayout = ccs.GUIReader:getInstance():widgetFromJsonFile("testUI.json.json")self:addChild(myLayout)local loginBtn = myLayout->getChildByName("login")(不知道这样对不对,日后再来验证)方法二:local testBtn = ccui.Helper:seekWidgetByName(myLayout,"TestButton")区别: 方法一: getChildByName是按照数结构进行查找,只能查找父对象下面的子对象,而不能跨级查找。 方法二: Helper::seekWidgetByName可以在整个对象结构中直接查找。
(有时候我们需要获取某个节点的子节点的子节点、甚至子节点的子节点的子节点、甚至… 这样的需求是很常见的,而一层一层去get未免太繁琐。这时方法二是一个很好的选择)
新闻热点
疑难解答