【已解决】怎样获取UILayer的触摸?

现在遇到一个比较蛋疼的问题!一个空层我可以添加触摸事件并且响应触摸事件!可是我添了如下代码就响应不了触摸事件了!

可是如果我不导入UI编辑器生成的JSON,也是可以触发触摸事件的!请问要怎么才能使加载了资源并且UILayer也能接收触摸?大神们帮帮忙!这个是BUG还是另有其它解决方法!
注:就算_UIlayer->setTouchEnabled(true); 添加这样的代码同样失去了触摸事件!

小的有个建议你可以试试看这样的阶层
目前我的做法是这样 没什么大问题
void Scene::OnEnter()
{
CCScene::OnEnter();
UILayer *pLayout = UILayer::Create();

pLayout->addChild(TestLayer::Create());
this->addChild(pLayout);

}

TestLayer : public CCLayer

void TestLayer::OnEnter()
{
CCLayer::OnEnter();
UILayer *pLayout = UILayer::Create();
pLayout->addWidget(CCUIHELPER->createWidgetFromJsonFile(“xxx.json”));
this->addChild(pLayout);
}

表示还是不行。只要我在编辑器中开启了交互就会被截取触摸。但是不交互触摸就会被穿透!有点疼。。。。。。

隐藏面板时 关闭交互 setTouchEnbled(false)

楼主解决了没?我也遇到了一样的问题

我也是这个问题,我就想实现一个功能,我用Lua加载Json来写UI的;

UILayer注册了onTouch但是没有响应……

沙发上饭店

void HelloWorld::onEnter()
{
//设置一下优先级
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this,-1,false);
CCLayer::onEnter();
}

这样就可以了。你加个层,他会自己把触屏处理掉不往下传了,所以你设置一下优先级,比他先处理就能收到了

我也遇到这个问题,场景编辑器中的UI控件,怎么给他添加触摸事件?楼主解决了么?