AS删除对象之前或之后的removeEventListener

时间:2012-08-03 02:05:58

标签: actionscript-3

快速提问;我应该先使用removeChild()还是removeEventListener()

另外,如果我将对象设置为null,是否仍需要从该对象中删除事件侦听器?

2 个答案:

答案 0 :(得分:3)

  

“在removeChild之前删除事件侦听器。”

是否采用其他方式会引发错误,完全取决于您正在收听的事件&事件触发后您尝试访问的对象。

但是,尽可能快地删除事件侦听器总是一个好习惯。

例如:如果您需要点击一次按钮&你似乎在点击后禁用了按钮,保持监听器运行是没有意义的。

<小时/> 是的,您需要手动删除所有事件侦听器。但您也可以使用弱事件侦听器:

addEventListener(MouseEvent.CLICK, clicked, false, 0, true);

当对象设置为null时,提示垃圾收集器移除侦听器。

答案 1 :(得分:1)

  

我应该在removeChild之前删除所有eventListener,还是在eventListener之前删除removeChild。

这些任务是无关的,所以没关系。也就是说,有一些事件是通过删除一个孩子触发的,所以如果你依赖Event.REMOVED_FROM_STAGE,那么你将要删除事件监听器。

  

如果我将对象设置为NULL,是否仍需要removeEventListener?