scaleform.minarto.com

Loader class 사용시 주의할 것... 본문

ActionScript

Loader class 사용시 주의할 것...

미나토 2007. 6. 25. 13:43

as3 에서는 swf나 이미지 파일을 불러오기 위해서는 Loader class 를 사용하여야 한다.

var loader:Loader = new Loader();
loader.load(new URLRequest(파일명:String));
addChild(loader);

이런식이다. 뭐, 잘 불러진다.

그럼 Event.COMPLETE 이벤트를 발생하기 위해서는 어찌해야 할까나...



loader.addEventListener(Event.COMPLETE, handler);

이렇게? 얼핏 보면 맞아보이고 컴파일 단이든 런타임 단이든 에러도 발생하지 않지만 정작 이벤트는 발생하지 않는다.
이벤트는 다음과 같이 작성해야만 발생한다. (이걸 몰라 레퍼런스를 찾기 전까지 몇분간 해맸다는... 역시 구글신과 맞짱뜨시는 레퍼런스 신이시다)



loader.contentLoaderInfo.addEventListener(Event.COMPLETE, handler);


contentLoaderInfo:LoaderInfo 라는 속성에 이벤트를 걸어줘야 제대로 동작한다.


왜 이렇게 만들었는 지는 잘 모르겠으나 어도비를 탓하기 전에 레퍼런스를 정독해야지 뭐...


ps. 불러온 녀석의 클래스 타입을 알기 위해서는 loader.content:DisplayObject 로 읽어야 한다는...