flash - 如何从显示对象中删除所有事件监听器?

标签 flash actionscript-3 events event-handling

有没有一种方法可以确定向显示对象注册了哪些事件监听器?我想从显示对象中删除所有事件监听器,以便可以根据应用程序中的上下文更改分配新的事件监听器。

最佳答案

jeceuyper是正确的...

并非如此:DisplayObject扩展了EventDispatcher,它已经实现了IEventDispatcher ...因此更加精确:您需要重写addEventListenerremoveEventListener来跟踪监听器...

一些技术细节:我建议您使用Dictionary存储处理程序函数...插入速度较慢,但​​删除速度则更快...而且,Dictionary支持弱引用,这在事件处理中非常重要。 ..还请记住,useCapture允许两次添加相同的处理程序...

那么祝你好运吧 ... ;)

关于flash - 如何从显示对象中删除所有事件监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1452746/

相关文章:

arrays - Flash 跟踪、转储、打印数组变量

actionscript-3 - 如何在flex中动态设置对象的属性或字段

javascript - ActionScript 3 数组

javascript - jQuery 自定义事件监听器

flash - Adobe Flash 11.3 低延迟音频支持通过 NetStream 进行流式传输

actionscript-3 - 仅使用 RTMFP 进行随机匹配 (Adobe Cirrus)

actionscript-3 - 如果在自己的域上播放,如何播放YouTube视频

javascript - 处理父网页中的 iFrame 事件

jquery - 如何在 HTML 元素上正确触发 Esc keyup 事件?

javascript - 在 "swf"""中播放/显示 "a rel="