active=false 还能接收触摸事件的bug,搞一万年都没修复

麻烦提供一个可重现的 demo,谢谢!

我的主域是1.9.1,this.sub.node.active = false; 其中sub放的是1.10.1版本的子域。问题依旧存在。至于为什么我用两个版本,这个大坑我也不想说了

确实1.9.1版本里依旧还是有这个问题,目前发现如果节点层级偏多时,且如果存在scrollView时,如果直接关闭根节点,scrollView层级下的节点依旧能够接收到点击事件,而且必现。小型的demo又复现不出来,所以一直都是把坐标移出去来解决这个问题。

这是一次我们项目中出现这个问题的调试截图

很明显 这个节点node的根节点active=false,node的activeInHierarchy=false;但是这个节点依然能够被点击到,从而导致主界面点击不到。

现在的问题是引擎组需要一个复现demo,公司项目又不好发过去,自己又弄不出复现的demo,所以问题一直拖着,但这个不是一个解决方法

其实建议你们整个跟微信小游戏类似的bug反馈机制,直接上传代码片段,你们导入就能跑,这样节省了你们时间,毕竟来回沟通成本太大了。而且有这么个东西解决bug起来也方便,以后也一直能用的上

问题是现在问题还没解决,从studio到creator都不予解决,这是为什么呢?

大部分都是楼上回复的 resumeSystemEvents 引起的。如果不是这个原因,还请提供一个 demo!

我也遇到了哎…按钮为false的时候会触发…然后改成把按钮false的时候移动x到外面了…当时百思不得其解,按钮false了还能触发,不过是在真机上触发,调试不会…版本是1.10.

子节点上有事件然后active=false,再把父节点active=false; active=true; 好像就会

用了cc.eventManager.pauseTarget(cc.find(‘Canvas’), false);和resume

2.x会有这样问题?能提供下demo吗?

creator1.6到1.10了这个bug一直都在,问题在.on注册事件,this.node.on((cc.Node.EventType.TOUCH_END,this.func,this););
然后你把这个node设置false,还是能触发事件。当然这个问题发生在Android,web端没事

诶,刚刚2.0.7也遇到了这个问题,找不到原因

貌似开发进度慢了很多,估计都在搞区块链。

不同项目,根本就不会相互影响,别乱下定义…

最好升级一下到最新版本,应该是已经修复了

区块链跟 Cocos 其实没半毛钱关系。不同公司的不同项目。

1赞

这个问题还没解决?

通过 ActiveTest.zip 范例进行测试表现是正确的

因为是先设置了 bBtn 节点的 active 为 false 后在 resumeSystemEvents 导致 bBtn 上的事件被恢复了,这个是正常结果

如果想要 bBtn 事件无法被触发应该把设置 active 为 false 移动到 resumeSystemEvents 后面才对

2赞

节点分类问题,resume把所有节点都激活了