代码获取Button问题

我使用的cocos2dx的版本为2.2.2,代码里获取Scene编辑器里的按钮的时候出现了问题。

CCNode pFishJoyScene = SceneReader::sharedSceneReader()->createNodeWithSceneFile(“cnm.json”);
this->addChild(pFishJoyScene);
CCComRender container=(CCComRender)pFishJoyScene->getChildByTag(18)->getComponent(“Button_40”);
Button
button=(Button*)container->getNode();

结果button得到的不是有效值。

您好,您的获取方式是错误的,场经导出后的内容都叫做组件,其中UI界面部分是GUI组件,您需要第一步获取GUI组件,第二步从GUI组件中获取Button。关于这部分内容您可以参考此教程:http://www.cocoachina.com/bbs/read.php?tid=194073

感谢您对CocoStudio的支持。

thanks hanrea,问题已解决,我把代码贴出来供大家参考。

     CCNode *pFishJoyScene = SceneReader::sharedSceneReader()->createNodeWithSceneFile("xxx.json");
  this->addChild(pFishJoyScene);

  CCComRender *pUIRender = static_cast<CCComRender*>(pFishJoyScene->getChildByTag(10012)->getComponent("GUIComponent"));
  //转换为TouchGroup类型
  cocos2d::gui::TouchGroup *pUILayer = static_cast<cocos2d::gui::TouchGroup*>(pUIRender->getNode());
  Button* button=(Button*)(pUILayer->getWidgetByTag(151));

赞一个:2: