我写了这个动作脚本代码:
trace("before remove: " +
donneesTechniques.hasEventListener(DonneesTechniques.INITIALISATION) );
donneesTechniques.removeEventListener(DonneesTechniques.INITIALISATION, init);
trace("after remove: " +
donneesTechniques.hasEventListener(DonneesTechniques.INITIALISATION) );
此代码的输出为:
before remove: true
after remove: true
怎么可能? donneesTechniques
组件有INITIALISATION
事件的列表,但似乎没有将其删除...
我通过代码检查了该组件的内存地址,它始终是相同的地址。所以没有删除另一个对象。如果找不到侦听器,removeEventListener没有任何效果但在我的情况下有一个(根据hasEventListener()
)
答案 0 :(得分:1)
根据hasEventListener()
,至少一个侦听器。因此,如果其他组件也订阅了此事件,并且在您删除当前对象中的侦听器后仍然订阅,那么很可能。