flash – 重复事件监听器的数量?
发布时间:2020-12-15 07:26:29 所属栏目:百科 来源:网络整理
导读:在as3中,如果我向对象添加相同的事件侦听器,则为例 txtField.addEventlistener( Event.CHANGE,changeCb,false,true );txtField.addEventlistener( Event.CHANGE,true ); 我需要两次删除该监听器吗? 如何获取对象上的列表或事件侦听器数? 解决方法 不,在这
在as3中,如果我向对象添加相同的事件侦听器,则为例
txtField.addEventlistener( Event.CHANGE,changeCb,false,true ); txtField.addEventlistener( Event.CHANGE,true ); 我需要两次删除该监听器吗? 如何获取对象上的列表或事件侦听器数? 解决方法
不,在这种情况下,您不需要两次删除侦听器.
您需要在两种情况下删除多个侦听器: >如果添加两个具有不同侦听器函数的事件侦听器: txtField.addEventlistener( Event.CHANGE,true ); txtField.addEventlistener( Event.CHANGE,changeCb2,true ); >如果您在捕获阶段设置了一个要触发的事件: txtField.addEventlistener( Event.CHANGE,true,true ); 因此,您只需要删除以不同方式注册的事件. 您无法使用Flex中提供的开箱即可获得事件侦听器的计数,但您可以使用hasEventListener(type)检查它是否具有针对特定类型事件的事件侦听器. 但是,由于提供了源代码,您可以“猴子修补”UIComponent或FlexSprite类来添加此功能,如this blog中所述.实际上,您甚至不必这样做.代码在示例中提供.很酷. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |