处理从Mobile Spark组件调度的AS文件中的事件

时间:2012-01-11 04:18:11

标签: actionscript-3 mobile air

我在使用Flash Builder 4.6构建的移动应用程序中有一个名为HomeView.mxml的mxml文件。在那个HomeView.mxml中我有一个HSlider,它在移动拇指时调度事件。我想要做的是在项目的其他地方的.as文件中监听valueCommit事件。

每当拇指移动时,都会在HomeView.mxml:

中调度一个事件
    hSlider.dispatchEvent(new FlexEvent("valueCommit", true));

我可以在HomeView.mxm中处理该事件,但不能在名为view.as的.as类中处理

在view.as我导入FlexEvent,然后我在addedToStageHandler中输入:

    stage.addEventListener(FlexEvent.VALUE_COMMIT, commitHandler);

然后有一个简单的处理程序:

    private function commitHandler(e:FlexEvent):void
    {
        trace("committed!");
    }

但是这段代码永远不会运行。我在HomeView.mxml文件中有一个处理事件的处理程序,但由于其他原因,我需要在view.as中处理它。

感谢。

1 个答案:

答案 0 :(得分:0)

其中一个原因是您有stopPropagationstopImmediatePropagation个方法。这些方法可能位于HSlider组件的代码中。您可以尝试调度不扩展FlexEvent的自定义事件。