自分自身のイベントを削除する
script内で、addEventListernerした場合、そのイベントは明示的にremoveするべきです。
ですが、都度addEventListernerを呼び出すようなコードを作るような場合、removeを忘れるとメモリリークの原因となる可能性があります。
毎回、addEventLIsternerするのであれば、呼び出したハンドラー関数内でイベントを削除しておきましょう。
private function clickHandler(e:MouseEvent):void { IEventDispatcher(e.currentTarget).removeEventListener(e.type, arguments.callee); trace('clicked'); // 処理 }
ポイントは、IEventDispatcher(e.currentTarget).removeEventListener(e.type, arguments.callee);
の部分ですね。
== ランキングに参加しています。ぜひクリックお願いします ==
DataGridの選択行の背景描画を制御する Oracleのalertログはどこにある?