我在使用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中处理它。
感谢。
答案 0 :(得分:0)
其中一个原因是您有stopPropagation
或stopImmediatePropagation
个方法。这些方法可能位于HSlider组件的代码中。您可以尝试调度不扩展FlexEvent的自定义事件。