关于事件冒泡拦截的疑惑
引擎:Unity 2019.4
在使用列表onClickItem事件中,调用了EventContext.StopPropagation方法,发现事件无法被打断,后面的时间还是被执行了。后面查源码断点发现GList的__clickItem函数调用了EventDispatcher.DispatchEvent,而该方法不会吧对应的EventContext传入,导致在EventDispatcher.InternalDispatchEvent调用了EventContext.StopPropagation也无效,因为该context是回收利用了,不是BubbleEvent中的context。
这个设计是否有缺陷?或者说为什么这里的事件设计的时候不被打断?
在使用列表onClickItem事件中,调用了EventContext.StopPropagation方法,发现事件无法被打断,后面的时间还是被执行了。后面查源码断点发现GList的__clickItem函数调用了EventDispatcher.DispatchEvent,而该方法不会吧对应的EventContext传入,导致在EventDispatcher.InternalDispatchEvent调用了EventContext.StopPropagation也无效,因为该context是回收利用了,不是BubbleEvent中的context。
这个设计是否有缺陷?或者说为什么这里的事件设计的时候不被打断?
没有找到相关结果
已邀请:
1 个回复
谷主
赞同来自: