使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。可以为特定类型的事件、阶段和优先级在显示列表的所有节
点上注册事件侦听器。成功注册一个事件侦听器后,无法通过额外调用 on() 来更改其优先级。要更改侦听器的优先级,必须
先调用 removeEventListener()。然后,可以使用新的优先级再次注册该侦听器。注册该侦听器后,如果继续调用具有不同 type 或 useCapture
值的 on(),则会创建单独的侦听器注册。
如果不再需要某个事件侦听器,可调用 EventDispatcher.removeEventListener()
删除它;否则会产生内存问题。由于垃圾回收器不会删除仍包含引用的对象,因此不会从内存中自动删除使用已注册事件侦听器的对象。复制
EventDispatcher 实例时并不复制其中附加的事件侦听器。(如果新近创建的节点需要一个事件侦听器,必须在创建该节点后附加该侦听器。)
但是,如果移动 EventDispatcher 实例,则其中附加的事件侦听器也会随之移动。如果在正在处理事件的节点上注册事件侦听器,则不会在当
前阶段触发事件侦听器,但会在事件流的稍后阶段触发,如冒泡阶段。如果从正在处理事件的节点中删除事件侦听器,则该事件侦听器仍由当前操
作触发。删除事件侦听器后,决不会再次调用该事件侦听器(除非再次注册以备将来处理)。
事件的类型。
处理事件的侦听器函数。此函数必须接受 Event 对象作为其唯一的参数,并且不能返回任何结果, 如下面的示例所示: function(evt:Event):void 函数可以有任何名称。
侦听函数绑定的this对象
OptionaluseCapture: boolean
确定侦听器是运行于捕获阶段还是运行于冒泡阶段。如果将 useCapture 设置为 true, 则侦听器只在捕获阶段处理事件,而不在冒泡阶段处理事件。如果 useCapture 为 false,则侦听器只在冒泡阶段处理事件。 要在两个阶段都侦听事件,请调用 on() 两次:一次将 useCapture 设置为 true,一次将 useCapture 设置为 false。
Optionalpriority: number
事件侦听器的优先级。优先级由一个带符号的整数指定。数字越大,优先级越高。优先级为 n 的所有侦听器会在 优先级为 n -1 的侦听器之前得到处理。如果两个或更多个侦听器共享相同的优先级,则按照它们的添加顺序进行处理。默认优先级为 0。
添加仅回调一次的事件侦听器,此方法与on()方法不同,on()方法会持续产生回调,而此方法在第一次回调时就会自动移除监听。
事件的类型。
处理事件的侦听器函数。此函数必须接受 Event 对象作为其唯一的参数,并且不能返回任何结果, 如下面的示例所示: function(evt:Event):void 函数可以有任何名称。
侦听函数绑定的this对象
OptionaluseCapture: boolean
确定侦听器是运行于捕获阶段还是运行于冒泡阶段。如果将 useCapture 设置为 true, 则侦听器只在捕获阶段处理事件,而不在冒泡阶段处理事件。如果 useCapture 为 false,则侦听器只在冒泡阶段处理事件。 要在两个阶段都侦听事件,请调用 once() 两次:一次将 useCapture 设置为 true,一次将 useCapture 设置为 false。
Optionalpriority: number
事件侦听器的优先级。优先级由一个带符号整数指定。数字越大,优先级越高。优先级为 n 的所有侦听器会在 优先级为 n -1 的侦听器之前得到处理。如果两个或更多个侦听器共享相同的优先级,则按照它们的添加顺序进行处理。默认优先级为 0。
OptionaluseCapture: booleanOptionalpriority: numberOptionaldispatchOnce: boolean从 EventDispatcher 对象中删除侦听器。如果没有向 EventDispatcher 对象注册任何匹配的侦听器,则对此方法的调用没有任何效果。
事件的类型。
要删除的侦听器对象
侦听函数绑定的this对象
OptionaluseCapture: boolean
指出是为捕获阶段还是为冒泡阶段注册了侦听器。如果为捕获阶段以及冒泡阶段注册了侦听器,则需要对 removeEventListener() 进行两次调用才能将这两个侦听器删除:一次调用将 useCapture 设置为 true,另一次调用将 useCapture 设置为 false。。
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。这样,您就可以确定 EventDispatcher 对象在事件流层次结构中的哪个 位置改变了对事件类型的处理。要确定特定事件类型是否确实会触发事件侦听器,请使用 IEventDispatcher.willTrigger()。hasEventListener() 与 willTrigger() 的区别是:hasEventListener() 只检查它所属的对象,而 willTrigger() 检查整个事件流以查找由 type 参数指定的事件。
事件的类型。
如果指定类型的侦听器已注册,则值为 true;否则,值为 false。
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。将指定类型的事件调度给此 EventDispatcher 对象或其任一后代时,如果在事件流的任何阶段触发了事件侦听器,则此方法返回 true。 hasEventListener() 与 willTrigger() 方法的区别是:hasEventListener() 只检查它所属的对象, 而 willTrigger() 方法检查整个事件流以查找由 type 参数指定的事件。
事件类型
是否注册过监听器,如果注册过返回true,反之返回false
将事件分派到事件流中。事件目标是对其调用 dispatchEvent() 方法的 EventDispatcher 对象。
调度到事件流中的 Event 对象。
如果成功调度了事件,则值为 true。值 false 表示失败或对事件调用了 preventDefault()。
Orientation 监听设备方向的变化,当方向变化时派发 CHANGE 事件 Event.CHANGE 设备方向改变时派发
Version
Egret 2.4
Platform
Web
Include Example
egret/sensor/DeviceOrientation.ts
See
http://edn.egret.com/cn/docs/page/661 获取设备旋转角度
Language
zh_CN