IEventDispatcher

addEventListener()方法:

addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
useCapture: 是否只在捕捉阶段监听.
priority: 事件侦听器的优先级。 数字越大,优先级越高。
useWeakReference: 确定对侦听器的引用是强引用,还是弱引用。 强引用(默认值)可防止您的侦听器被当作垃圾回收。
dispatchEvent()方法:
将事件调度到事件流中。 事件目标是对其调用 dispatchEvent() 的 EventDispatcher 对象。
removeEventListener()方法:
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
useCapture: 指出是否为捕获阶段或目标阶段和冒泡阶段注册了侦听器。
hasEventListener()方法:
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
willTrigger()方法:
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器.
hasEventListener() 与 willTrigger()的区别是:hasEventListener() 只检查它所属的对象,而 willTrigger() 检查整个事件流以查找由type参数指定的事件。

为了判断事件流的上游是否能处理某个事件,应该借助“willTrigger()”方法进行检查。当事件流的节点对象调用“willTrigger()”方法后,不仅检查调用该方法的对象,同时还会检查该对象的上游节点。如果发现相应的事件侦听器,则返回true。“willTrigger()”方法虽然简单,但是不能提供确切的事件侦听器数目。

如果在代码中遍历事件流对象,并配合“hasEventListener()”方法,能够获得某个事件的侦听器数量。

 

输出:

hasEventListener: false
     willTrigger: true

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值