[AS 3.0] 이벤트 리스너에 인수 함께 전달하기(3)

원문 : http://d.hatena.ne.jp/nitoyon/20071226/as_event_extra_arg

DynamicEvent 클래스를 이용하는 방법.
먼저 DynamicEvent 클래스를 작성합니다.

package {
    import flash.events.Event;

    public dynamic class DynamicEvent extends Event {
        public function DynamicEvent(type:String,
                                     bubbles:Boolean = false,
                                     cancelable:Boolean = false) {
            super(type, bubbles, cancelable);
        }

        override public function clone():Event {
            return new DynamicEvent(type, bubbles, cancelable);
        }
    }
}

Flex SDK에는 mx.events.DynamicEvent 이라는 클래스가 정의되어 있기 때문에 Flex SDK로 개발하는 경우 이 클래스를 사용하는 것이 좋을지도…

송신은 이렇게~

var event:DynamicEvent = new DynamicEvent("myEvent");
event.param1 = "문자열";
event.param2 = [1, 2, 3];  // 배열도OK
dispatchEvent(event);

dispatchEvent(event);

수신은 이렇게~

addEventListener("myEvent", function(event:DynamicEvent):void {
    trace(event.param1); // 문자열
});
  • Share/Bookmark

0 Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.
(c) 2010 blog.flasia.com | powered by WordPress with Barecity