有交互性的layout将多点触摸EventListenerTouchAllAtOnce事件给吞了

最近小生做一个要使用多点触摸的项目,UI这部分是cocostudio编写的,然后导入到代码里,等到了做多点触摸这一块后,发现多点触摸无效了,经过多次测试,排除,发现是UI控件将多点触摸事件给吞了,使用EventListenerTouchOneByOne就没事,无限无语中。。。。。。。。。请大家帮忙,看看有什么办法解决:886:

修改触摸优先级
http://blog.csdn.net/xiebaochun/article/details/23281619

感谢版主DDDigua的回答,鄙人不才,按照版主给的资料进行测试,
auto listener = EventListenerTouchAllAtOnce::create();
listener->onTouchesBegan = (const std::vectorcocos2d::Touch*& touches, cocos2d::Event *event){
log("-----EventListenerTouchAllAtOnce----onTouchesBegan----");
};
_eventDispatcher->addEventListenerWithFixedPriority(listener, -128);

还是没效果。

用单点的测试了下,有效果
auto listener = EventListenerTouchOneByOne::create();
listener->setSwallowTouches(true);
listener->onTouchBegan = (const Touch* touch, Event *event) {
log("-----EventListenerTouchAllAtOnce----onTouchesBegan----");
return true;
};
_eventDispatcher->addEventListenerWithFixedPriority(listener, -128);

稍等,我测试下。

同样的问题

有一点我忘记说了,用代码生成的widget控件就可以用多点触摸

多点触摸可以用单点触摸的方式模拟出来,其实多点触摸有很多坑,比如切换场景的时候,很容易出现奇葩问题。主要原因是多点触摸没有return true的限制。