Signals框架介绍(三)原生事件
注意:本文参考An introduction to AS3 Signals写成,但不是翻译,有增删改。
- 第一部分:Signals框架介绍(一)基本用法
- 第二部分:Signals框架介绍(二)高级事件
原生事件
为了达到替换AS3事件机制的目的,Signals当然包含了对AS3原生事件的支持。这依赖于NativeSignal类。
下面的范例演示了如何在Stage上添加单击事件。由于一看就懂,这里就不废话解释了。
[NativeSignalSample.as]
1package
2{
3import flash.display.Sprite;
4import flash.events.MouseEvent;
5import org.osflash.signals.natives.NativeSignal;
6
7[SWF(width=500,height=300,frameRate=30,backgroundColor=0xFFFFFF)]
8/**
9 * 测试原生事件
10 * @author zrong(zengrong.net)
11 */
12public class NativeSignalSample extends Sprite
13{
14 public function NativeSignalSample()
15 {
16 _click = new NativeSignal(this.stage, MouseEvent.CLICK, MouseEvent);
17 _click.add(handler_click);
18 //测试只发生一次的点击事件
19 //_click.addOnce(handler_click);
20 }
21
22 private var _click:NativeSignal;
23
24 private function handler_click($evt:MouseEvent):void
25 {
26 trace('currentTarget:',$evt.currentTarget);
27 trace('target:',$evt.target);
28 }
29}
30}
其它资料
- An introduction to AS3 Signals(本文的参考)
- AS3 Signals Tutorial(一个非常棒的视频教程)
- 更多的文章,与其它框架(PureMVC,Robotlegs,Flex)的连用
- Signals的作者关于AS3事件机制的3篇吐槽文 之一,之二,之三
- 文章ID:1510
- 原文作者:zrong
- 原文链接:https://blog.zengrong.net/post/as3_signal_intro3/
- 版权声明:本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可,非商业转载请注明出处(原文作者,原文链接),商业转载请联系作者获得授权。