2.0.9 mask组件上绑定事件失效

  • Creator 版本:2.0.9

  • 目标平台: Web / iOS / Android / 模拟器

  • 详细报错信息,包含调用堆栈:事件无响应

  • 重现方式:Demo

  • 之前哪个版本是正常的 :2.0.8

  • 手机型号 :

  • 手机浏览器 :

  • 编辑器操作系统 :

  • 编辑器之前是否有其它报错 :

  • 出现概率:必现

  • 额外线索:

Test.zip (471.1 KB)
Demo

我今天升级后也碰到这个问题了,请问你解决了吗?

inverted选项的关系


勾选了inverted的话,点击深蓝色的区域有touch事件,也就是node的boundingBox内,mask圆形外的区域


不勾选inverted的话,点击深蓝色的区域有touch事件,也就是mask圆形内的区域

可以参考CCMask对于Touch事件的处理源码:
https://github.com/cocos-creator/engine/blob/master/cocos2d/core/components/CCMask.js#L458-L484

如果需要相反的效果,可以定制一下引擎,将下面的代码注释掉即可

        if (this.inverted) {
            result = !result;
        }

我直接在外层嵌套一个节点来处理了,谢谢