cocos3.5.2 在一个父级UI中存在两个Ui预制体,分别为预设1与预设2,两个预设在相同位置,使用鼠标点击触发UI事件时,会穿过预设2的UI,而触发的是预设1的。渲染层级没有出现问题,预设2是显示在预设1上的,预设1与预设2的siblingIndex值分别为0,1。实在是想不到是什么原因导致的,也不知道有没有人遇到过。UI层级渲染没问题,但是鼠标点击的时候却点到的是下一层的UI。。。还是偶然出现的
是不是调整过节点的排序,或者修改过父节点?
是的,动态生成的对象,而且经常调整父级
调整父节点之前和之后暂停和恢复下父节点的系统事件试试,节点排序也有这个问题,这样做是没问题的。
父级节点是一个单纯的节点,没有做事件监听的,事件监听都是在生成的字节的上,父级在UI上的大小我都设为了0,如果是调整切换子节点父级之前或之后,把子节点的事件重新设置一下,这样行吗?
不用,调用一下parent的接口就可以。类似这样:
parent.pauseSystemEvents(true);
node.setSiblingIndex(length - 1);
parent.resumeSystemEvents(true);
这样做节点排序的触摸归属问题可以规避。
1赞
感谢大佬解惑!!
!!试了一下,测试了几次,确实没发现之前的问题了。这没遇到过这种情况有点想不明白,感谢大佬!!
