先用ui编辑器弄了个ui,然后用场景编辑器编了个场景,把ui拖进去了。
通过代码加载场景后,整了很久才弄明白怎样调UI编辑器里的控件。
把关键代码贴在这里以便查询:
bool SceneTest1::init()
{
if (!UILayer::init())
{
return false;
}
CCNode* pNode = SceneReader::sharedSceneReader()->createNodeWithSceneFile("test_scene_1.json");
if (pNode)
{
this->addChild(pNode,0,1);
pNode = (CCNode*)pNode->getChildByTag(10003);
CCComRender* pRender = (CCComRender*)pNode->getComponent("GUIComponent");
if (pRender)
{
UILayer* pLayer = dynamic_cast<UILayer*>(pRender->getNode());
UILabel* pTextCenter = dynamic_cast<UILabel*>(pLayer->getWidgetByName("Label_c"));
CCLOG("in here... %s", pTextCenter->getStringValue());
}
}
return true;
}