2013-04-22 4 views
0

내 메인 클래스 .loaderMax를 통해 이전에로드 한 .swf 파일에 이벤트를 디스패치해야합니다. 불행하게도 eventListener는 전달 된 이벤트를 암송하지 않으므로 아무 것도하지 않습니다. 나는 아래에서하려고하는 Im의 짧은 버전을 게시했습니다. 누군가 내가 잘못한 것을 말해 줄 수 있다면 행복 할거야.동적 이벤트로드 된 SWF에 사용자 정의 이벤트 디스패치

public class Main { 
     DisplayObject(loader.content).dispatchEvent("doSomething"); 
    }  

public class loadedSWF { 
    this.addEventListener("doSomething", handler); 

    function handler (event:Event):void { 
     trace("recived dispatched Event"); 
    } 
} 

답변

1

이벤트를 잘못 전달했습니다. EventDispatcher.dispatchEvent()을 참조하십시오.

귀하의 파견에는 하나의 인수 즉 이벤트가 포함되어야합니다. 따라서 :

DisplayObject(loader.content).dispatchEvent(new Event("doSomething")); 

이렇게하면 eventListener가 수신하는 "doSomething"유형의 이벤트가 전달됩니다.

+0

내 문제는 청취자가 잘못된 객체에 추가 되었기 때문에이 경우에 대한 답은 내 문제를 해결하지 못했습니다. 이전에는 이벤트가 제대로 전달되고 올바르게 수신되었지만 loaderMax를 올바르게 이해하지 못 했으므로 리스너를 잘못된 인스턴스에 연결했습니다. – tschery