在官方touch Api中我没有找到怎样获取 一个点击区域内的所有节点信息,请大神们提点一下
节点之间的层级如下图所示:

当点击红色区域的时候,需要关闭sprite2,同时点击button1。 sprite3是一个透明的区域(暂时用图片显示区域),需要有一个touchend 事件监听, 但是发现事件监听只是向父节点传递,button1上面无法检测到是否点击。 现在主要是sprit3上面的监听事件不能取消,有其它用途,各位大神有没有好的方法? 我想到的方法是 看下能否得到点击坐标内的所有节点信息,如果有 button,将它点击 ,但是没有找到对应的接口
要做的操作太多,超出引擎的范畴了。
添加全局监听,取得点击的坐标点,遍历要处理的对象,判断坐标在不在矩形范围内,然后sprite2与button1分别做各自的处理。
或者调整button 1的事件优先级,建一个透明层级再sprite2之下,点到该层则隐藏sprite2,然后事件继续穿透到button1
很感谢您的回复,其实我问题中处理方式即是您的第二种方法,sprite3就是一个透明区域,当点击这个透明区域的时候,关闭sprite2,但是dispatchEvent发送事件只会向上发送,导致bg节点和canvas都能收到touchend,但是button1事件没有收到,这个时候事件并没有穿透点击到button1
那就研究下层级的问题咯,没研究过源码,但我觉得没有阻止穿透的话,应该会遍历scene中所有节点然后判断坐标之类的来触发。
自己手动 button1.dispatchEvent(event); 可以吗
cage? 我是dl。。。。
button界面会有很多,不太适合,而且也无法知道点了哪个button
