UIButton控件和CCLayer输入同时响应问题

问个问题,UIButton下面有个CCLayer,CCLayer是响应输入的
点击UIButton时,CCLayer的输入也同时响应,相当于按钮被点击穿透了。
试过改CCLayer的输入优先级、swallowTouch,都不行

如何能解决这种情况?UIButton有没有设置swallowTouch的地方?

楼主你好,
说明一下 UI 控件树与其他 cocos2d-x 节点修改触摸优先级的方法:

  1. UI 控件树会被挂到 UlLayer (继承了 CCLayer)上。
  2. 用 setTouchPriority 修改 UILayer 的 触摸优先级,可以修改挂到 UILayer 上的整个 UI 控件树相对于其他 cocos2d-x 节点的触摸优先级。从而控制 UILayer 的触摸响应顺序。

你好,

我这里是这样的;

CCLayer touchLayer; UILayer uiLayer; UIWiget uiW;

读取UI编辑器导出的json文件,创建uiW, 然后将 uiW ( 其中所有层容器都设置可交互) 挂到 uiLayer; 然后再将uiLayer 挂到 touchLayer ;

然后 touchLayer 监听触摸事件, 其可以被 uiLayer 上 控件的触摸事件 "穿透 ";

按你的方法, 设置过touchLayer 和 uiLayer 的触摸优先级, setTouchPriority , 无效^

效果是 事件捕获 的 先后,

还以为可以 实现优先级高的响应 而低的不响应呢^