EventDispatcher 存在bug
QuiQiJingFeng opened this issue · 0 comments
QuiQiJingFeng commented
- cocos2d-x version:3.17.2
在onTouchEnded中调用event:stopPropagation()有问题。
因为这个只是停止了当前事件继续往后面的监听器分发,但是
后面的监听器中_claimedTouches没有清理。
造成的结果就是,比如点击了一个关闭按钮,同时触发了关闭按钮的回调以及一个不相干的回调,
原因就是另一个监听器的_claimedTouches没有清理。
目前的解决方法是 dispatchTouchEvent中的EventTouch::EventCode::ENDED 和 EventTouch::EventCode::CANCELLED中清理所有监听器的_claimedTouches
