0
我有一个flex组件的代码,我想监听一个事件,事件的来源是另一个类正在运行的另一个类运行的自定义类等等。我的印象是一个事件将通过在整个应用程序,所以我希望如果我派遣在像这样的类自定义事件..一个事件能走多远,我该如何听?
private function finishEvent():void {
var evt:EventDispatcher = new EventDispatcher;
var finished:Event = new Event("finishedInterpret");
evt.dispatchEvent(finished);
}
然后我可以抓住它在我的部分是这样的:
public function interpret(data:Array):void {
addEventListener("finishedInterpret", applyInferences);
db.executeBatch();
}
事件在executeBatch完成时基本被触发,finishEvent被调用,但我是l istener没有得到任何东西。我试着将它设置为db.addEventListener,但现在已经有效。
啊我明白了。不幸的是,我正在使用的那个类中的组件确实已经完成,它几乎被埋在了几个级别的调用中。所以我基本上必须将事件传递到每个级别,然后我想.. hrmph希望不要必须大量修改该代码 – Damon 2011-03-29 23:05:29
您可以使用事件冒泡。这将允许事件通过多层传播到显示树中的第一个监听祖先。 – Jacob 2011-03-29 23:13:21
啊..我以为这是默认启用。当我尝试将气泡设置为true时,它是只读属性 – Damon 2011-03-29 23:23:52