2012-01-11 5 views
0

Flash Builder 4.6を使用して構築されたモバイルアプリケーションにHomeView.mxmlというmxmlファイルがあります。そのHomeView.mxmlには、親指が動いたときにイベントをディスパッチするHSliderがあります。私がしようとしているのは、プロジェクトの他の場所にある.asファイルのvalueCommitイベントをリッスンすることです。 モバイルスパークコンポーネントから送出されたASファイル内のイベントを処理します

するたびに親指を移動

は、イベントがHomeView.mxmlに送出されます。

hSlider.dispatchEvent(new FlexEvent("valueCommit", true)); 

は私がHomeView.mxmでそのイベントを処理することができますが、ないの.asクラスで呼ばview.as

view.asでaddedToStageHandlerに、私はFlexEventをインポートし、私は、持っている:

stage.addEventListener(FlexEvent.VALUE_COMMIT, commitHandler); 

はその後、簡単なハンドラがあります

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

しかし、このコードは実行されません。 HomeView.mxmlファイルにイベントを処理するハンドラがありますが、他の理由からview.asでも同様に処理する必要があります。

ありがとうございました。

答えて

0

原因の1つは、stopPropagationまたはstopImmediatePropagationのいずれかの方法です。このメソッドは、HSliderコンポーネントのコード内に配置されている可能性があります。 FlexEventを拡張しないカスタムイベントをディスパッチしようとする場合があります。

+0

ありがとうございます、それは私が回避策として取り組んできたことです。 stopPropagationまたはstopImmediatePropagationはどこにもありません。他の場所でFlexEventを聴くだけの方法があると思います。 – David

関連する問題