关于FlexBuilder的Event注释

如果某个类派发某事件, 我们通常使用如下注释:

/** * Dispatched when …. * @eventType com.events.MyEvent.EVENT_TEST */ [Event(name=”myEvent” type=”com.events.MyEvent”)]

 

在使用new testr().addEvent…时提示的Const是错误的.MyEvent.MY_EVENT

解决方法:

[Event(name=”eventTest” type=”com.events.myevent”)] 此时的提醒为MyEvent.EVENT_TEST []中的name应与Event中的const的名字 如EVENT_TEST:String = "myEvent"; 中的EVENT_TEST对应 ,’_"后的字母保留大写去掉下划线->eventTest即可.

 

注意: Flex框架中的事件, 其Const 与String的name都是想对应的.

==>不得不承认 这样子比较挫<==

所以在编写自定义事件时, 最好也遵守这个不成文的规定:

public static const EVENT_EO_EDITOR:String = "eventEoEditor";

而不是随便乱写一个String, 这样便于在其他派发该事件的类中编写事件注释.

Flex中addEventListener失败原因总结

我绝对是个粗心大意的人, 写代码90%的时间是浪费在低级错误上. 今天不幸又add错一把, 索性将犯错原因归纳如下:

1.弱智级别:*****  隔着锅台上炕:  没有dispatch就addEventListener

2.弱智级别:****   驴唇不对马嘴:  addEventListener中Event类型不符
3.弱智级别:***    驴唇不对马嘴:   Listener参数中Event类型不符[FleBuilder会在编译时报错]
4.弱智级别**      脑子让驴踢了:   在addEventListener之前就dispatch Event[不太容易发现]

自定义事件常见错误:

1. Type不使用Const的String

2. 构造函数中super(type…)中type填写错误.

Flex中Event与Bindable

[小站博客均为原创, 转载请保留以下信息:

作者:http://liguoliang.com 欢迎访问:Adobe上海用户组: http://riashanghai.com ]

Event:

1.事件派发 Dispatching

Flash.events.EventDispacher类提供了事件dispatch函数,如果需要dispatch事件,则应该考虑继承该类或其子类.如果不能继承该类,则应事先IEventDispatcher接口

2.监听事件 Listening to Events

在监听事件时应首先考虑是否要使用weak referenced.如果事件监听与派发与监听函数有共同的生命周期,则可以使用strong referenced,在其他的大部分情况下,则应使用weak referenced.
需要注意的是, 如果事件派发者属性为Public, 则在任何允许的地方都可以增加监听函数, 从而达到低内聚, 更易于操作.