패키지flash.display
클래스public class Loader
상속Loader Inheritance DisplayObjectContainer Inheritance InteractiveObject Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

Loader 클래스는 SWF 파일이나 이미지(JPG, PNG 또는 GIF) 파일을 로드하는 데 사용됩니다. load() 메서드를 사용하여 로드를 시작합니다. 로드된 표시 객체는 Loader 객체의 자식으로 추가됩니다.

텍스트 또는 이진 데이터를 로드하려면 URLLoader 클래스를 사용합니다.

Loader 객체는 자식 표시 객체(Loader 객체가 로드하는 표시 객체)를 하나만 가질 수 있기 때문에 Loader 클래스는 자신이 상속하는 다음 메서드를 무시합니다. 따라서 addChild(), addChildAt(), removeChild(), removeChildAt()setChildIndex() 메서드를 호출하면 예외가 발생합니다. 로드된 표시 객체를 제거하려면 해당 부모 DisplayObjectContainer 자식 배열에서 Loader 객체를 제거해야 합니다.

참고: ActionScript 2.0 MovieClipLoader 및 LoadVars 클래스는 ActionScript 3.0에서 사용되지 않습니다. Loader 및 URLLoader 클래스가 대신 사용됩니다.

Loader 클래스를 사용할 경우 다음과 같은 Flash Player 보안 모델을 고려해 볼 수 있습니다.

자세한 내용은 다음을 참조하십시오.

신뢰할 수 없는 소스(예: Loader 객체의 루트 SWF 파일에 대한 도메인이 아닌 도메인)에서 SWF 파일을 로드하는 경우, 다음 코드에서 보여 주듯이 Loader 객체의 마스크를 정의하여 해당 마스크의 바깥쪽 Stage 부분에 로드된 내용을 그릴 수 없게 할 수 있습니다.

import flash.display.*;
 import flash.net.URLRequest;
 var rect:Shape = new Shape();
 rect.graphics.beginFill(0xFFFFFF);
 rect.graphics.drawRect(0, 0, 100, 100);
 rect.graphics.endFill();
 addChild(rect);
 var ldr:Loader = new Loader();
 ldr.mask = rect;
 var url:String = "http://www.unknown.example.com/content.swf";
 var urlReq:URLRequest = new URLRequest(url);
 ldr.load(urlReq);
 addChild(ldr);
 

예제를 통해 확인하십시오.

참고 사항

flash.display.LoaderInfo
flash.net.URLLoader
flash.display.DisplayObject
기본 표시 클래스
표시 객체 로드


Public 속성
 속성다음에 의해 정의됨
 InheritedaccessibilityProperties : AccessibilityProperties
이 표시 객체의 현재 액세스 가능성 옵션입니다.
DisplayObject
 Inheritedalpha : Number
지정된 객체의 알파 투명도 값을 나타냅니다.
DisplayObject
 InheritedblendMode : String
사용할 블렌드 모드를 지정하는 BlendMode 클래스 값입니다.
DisplayObject
 InheritedcacheAsBitmap : Boolean
true로 설정된 경우, Flash Player는 표시 객체의 내부 비트맵 표현을 캐시합니다.
DisplayObject
 Inheritedconstructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다.
Object
  content : DisplayObject
[read-only] load() 또는 loadBytes() 메서드를 사용하여 로드된 SWF 파일 또는 이미지(JPG, PNG 또는 GIF) 파일의 루트 표시 객체를 포함합니다.
Loader
  contentLoaderInfo : LoaderInfo
[read-only] 로드 중인 객체에 해당하는 LoaderInfo 객체를 반환합니다.
Loader
 InheritedcontextMenu : ContextMenu
이 객체에 연결된 컨텍스트 메뉴를 지정합니다.
InteractiveObject
 InheriteddoubleClickEnabled : Boolean
이 객체에서 doubleClick 이벤트를 받을지 여부를 지정합니다.
InteractiveObject
 Inheritedfilters : Array
현재 표시 객체와 연관된 각 필터 객체가 들어 있는 인덱싱된 배열입니다.
DisplayObject
 InheritedfocusRect : Object
이 객체에서 포커스 사각형을 표시할지 여부를 지정합니다.
InteractiveObject
 Inheritedheight : Number
표시 객체의 높이를 픽셀 단위로 나타냅니다.
DisplayObject
 InheritedloaderInfo : LoaderInfo
[read-only] 이 표시 객체가 속한 파일의 로딩 정보가 포함된 LoaderInfo 객체를 반환합니다.
DisplayObject
 Inheritedmask : DisplayObject
호출하는 표시 객체는 지정된 mask 객체에 의해 마스크 처리됩니다.
DisplayObject
 InheritedmouseChildren : Boolean
해당 객체의 자식에서 마우스 기능을 사용할 수 있는지 여부를 결정합니다.
DisplayObjectContainer
 InheritedmouseEnabled : Boolean
이 객체에서 마우스 메시지를 받을지 여부를 지정합니다.
InteractiveObject
 InheritedmouseX : Number
[read-only] 마우스 위치의 x 좌표를 픽셀 단위로 나타냅니다.
DisplayObject
 InheritedmouseY : Number
[read-only] 마우스 위치의 y 좌표를 픽셀 단위로 나타냅니다.
DisplayObject
 Inheritedname : String
DisplayObject의 인스턴스 이름을 나타냅니다.
DisplayObject
 InheritednumChildren : int
[read-only] 이 객체의 자식 수를 반환합니다.
DisplayObjectContainer
 InheritedopaqueBackground : Object
표시 객체를 특정 배경색으로 불투명하게 처리할지 여부를 지정합니다.
DisplayObject
 Inheritedparent : DisplayObjectContainer
[read-only] 이 표시 객체가 포함된 DisplayObjectContainer 객체를 나타냅니다.
DisplayObject
 Inheritedprototype : Object
[static] 클래스 또는 함수 객체의 프로토타입 객체에 대한 참조입니다.
Object
 Inheritedroot : DisplayObject
[read-only] 로드된 SWF 파일에 있는 표시 객체의 경우, 해당 SWF 파일이 나타내는 표시 목록의 트리 구조 부분에서 맨 위에 위치하는 표시 객체가 루트 속성이 됩니다.
DisplayObject
 Inheritedrotation : Number
DisplayObject 인스턴스가 원점으로부터 회전한 각도입니다.
DisplayObject
 Inheritedscale9Grid : Rectangle
현재 적용 중인 크기 조절 격자입니다.
DisplayObject
 InheritedscaleX : Number
등록 포인트에서 적용된 객체의 가로 크기(percentage)를 나타냅니다.
DisplayObject
 InheritedscaleY : Number
객체의 등록 포인트에서 적용된 객체의 세로 크기(percentage)를 나타냅니다.
DisplayObject
 InheritedscrollRect : Rectangle
표시 객체의 스크롤 사각형 경계입니다.
DisplayObject
 Inheritedstage : Stage
[read-only] 표시 객체의 Stage입니다.
DisplayObject
 InheritedtabChildren : Boolean
객체의 자식에서 탭 기능을 사용할 수 있는지 여부를 결정합니다.
DisplayObjectContainer
 InheritedtabEnabled : Boolean
이 객체가 탭 순서에 있는지 여부를 지정합니다.
InteractiveObject
 InheritedtabIndex : int
SWF 파일에서 객체의 탭 순서를 지정합니다.
InteractiveObject
 InheritedtextSnapshot : TextSnapshot
[read-only] 이 DisplayObjectContainer 인스턴스에 대한 TextSnapshot 객체를 반환합니다.
DisplayObjectContainer
 Inheritedtransform : Transform
표시 객체의 행렬, 색상 변환 및 픽셀 경계와 관련된 속성을 가진 객체입니다.
DisplayObject
 Inheritedvisible : Boolean
표시 객체가 표시되는지 여부를 나타냅니다.
DisplayObject
 Inheritedwidth : Number
표시 객체의 폭을 픽셀 단위로 나타냅니다.
DisplayObject
 Inheritedx : Number
부모 DisplayObjectContainer의 로컬 좌표를 기준으로 DisplayObject 인스턴스의 x 좌표를 나타냅니다.
DisplayObject
 Inheritedy : Number
부모 DisplayObjectContainer의 로컬 좌표를 기준으로 DisplayObject 인스턴스의 y 좌표를 나타냅니다.
DisplayObject
Public 메서드
 메서드다음에 의해 정의됨
  
SWF, JPEG, GIF 또는 PNG 파일 등을 로드하는 데 사용할 수 있는 Loader 객체를 만듭니다.
Loader
 Inherited
이 DisplayObjectContainer 인스턴스에 자식 DisplayObject 인스턴스를 추가합니다.
DisplayObjectContainer
 Inherited
이 DisplayObjectContainer 인스턴스에 자식 DisplayObject 인스턴스를 추가합니다.
DisplayObjectContainer
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
리스너에서 이벤트 알림을 받을 수 있도록 EventDispatcher 객체에 이벤트 리스너 객체를 등록합니다.
EventDispatcher
 Inherited
지정된 point 점으로 DisplayObjectContainer.getObjectsUnderPoint() 메서드를 호출하여 반환된 목록에서 임의의 표시 객체가 보안 제한 사항으로 인해 생략되는지 여부를 나타냅니다.
DisplayObjectContainer
  
현재 Loader 인스턴스에 대해 진행 중인 load() 메서드 작업을 취소합니다.
Loader
 Inherited
지정된 표시 객체가 DisplayObjectContainer 인스턴스의 자식인지 아니면 인스턴스 자체인지를 확인합니다.
DisplayObjectContainer
 Inherited
이벤트를 이벤트 흐름으로 전달합니다.
EventDispatcher
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
targetCoordinateSpace 객체의 좌표계를 기준으로 표시 객체의 영역을 정의하는 사각형을 반환합니다.
DisplayObject
 Inherited
지정된 인덱스에 존재하는 자식 표시 객체 인스턴스를 반환합니다.
DisplayObjectContainer
 Inherited
지정된 이름을 가진 자식 표시 객체를 반환합니다.
DisplayObjectContainer
 Inherited
자식 DisplayObject 인스턴스의 인덱스 위치를 반환합니다.
DisplayObjectContainer
 Inherited
이 DisplayObjectContainer 인스턴스의 자식(또는 손자 등)으로서 지정된 점 아래에 있는 객체의 배열을 반환합니다.
DisplayObjectContainer
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
대상 좌표 공간 매개 변수에 의해 정의되는 좌표계를 기준으로 모양의 획을 제외하고 표시 객체의 경계를 정의하는 사각형을 반환합니다.
DisplayObject
 Inherited
Point 객체를 Stage 전역 좌표에서 표시 객체의 로컬 좌표로 변환합니다.
DisplayObject
 Inherited
EventDispatcher 객체에 특정 유형의 이벤트에 대한 리스너가 등록되어 있는지 여부를 확인합니다.
EventDispatcher
 Inherited
지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다.
Object
 Inherited
표시 객체를 평가하여 표시 객체와 겹치거나 교차하는지 확인합니다.
DisplayObject
 Inherited
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
표시 객체를 평가하여 x 및 y 매개 변수에 의해 지정된 점과 겹치거나 교차하는지 확인합니다.
DisplayObject
 Inherited
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다.
Object
  
load(request:URLRequest, context:LoaderContext = null):void
SWF, JPEG, 점진적 JPEG, 비애니메이션 GIF 또는 PNG 파일을 이 Loader 객체의 자식 객체로 로드합니다.
Loader
  
loadBytes(bytes:ByteArray, context:LoaderContext = null):void
ByteArray 객체에 저장된 이진 데이터에서 로드합니다.
Loader
 Inherited
Point 객체를 표시 객체의 로컬 좌표에서 Stage 전역 좌표로 변환합니다.
DisplayObject
 Inherited
지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다.
Object
 Inherited
지정된 자식 DisplayObject 인스턴스를 DisplayObjectContainer 인스턴스의 자식 목록에서 제거합니다.
DisplayObjectContainer
 Inherited
DisplayObjectContainer 자식 목록에서 지정된 인덱스 위치에 있는 자식 DisplayObject를 제거합니다.
DisplayObjectContainer
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher 객체에서 리스너를 제거합니다.
EventDispatcher
 Inherited
표시 객체 컨테이너에서 기존 자식의 위치를 변경합니다.
DisplayObjectContainer
 Inherited
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다.
Object
 Inherited
지정된 두 개의 자식 객체의 z 순서(전후 순서)를 맞바꿉니다.
DisplayObjectContainer
 Inherited
swapChildrenAt(index1:int, index2:int):void
자식 목록에서 지정된 두 곳의 인덱스 위치에 있는 자식 객체의 z 순서(전후 순서)를 맞바꿉니다.
DisplayObjectContainer
 Inherited
지정된 객체의 문자열 표현을 반환합니다.
Object
  
load() 메서드를 사용하여 로드된 이 Loader 객체의 자식을 제거합니다.
Loader
 Inherited
지정된 객체의 프리미티브 값을 반환합니다.
Object
 Inherited
이 EventDispatcher 객체 또는 조상 객체에 지정한 이벤트 유형에 대한 이벤트 리스너가 등록되어 있는지 여부를 확인합니다.
EventDispatcher
이벤트
 이벤트 요약 다음에 의해 정의됨
 Inherited Flash Player가 운영 체제에서 포커스를 얻어 활성화될 때 전달됩니다.EventDispatcher
 Inherited 표시 객체를 표시 목록에 추가할 때 전달됩니다.DisplayObject
 Inherited 표시 객체가 포함된 하위 트리를 추가하거나 또는 표시 객체를 스테이지 표시 목록에 직접 추가할 때 전달됩니다.DisplayObject
 Inherited 사용자가 동일한 InteractiveObject 위에서 포인팅 장치의 기본 버튼을 눌렀다 놓을 때 전달됩니다.InteractiveObject
 Inherited Flash Player가 운영 체제에서 포커스를 잃고 비활성화될 때 전달됩니다.EventDispatcher
 Inherited 객체의 doubleClickEnabled 플래그가 true로 설정되어 있는 경우 사용자가 동일한 InteractiveObject 위에서 포인팅 장치의 기본 버튼을 연속으로 빠르게 두 번 눌렀다 놓을 때 전달됩니다.InteractiveObject
 Inherited 재생 헤드가 새 프레임에 들어갈 때 전달됩니다.DisplayObject
 Inherited 표시 객체가 포커스를 얻은 후 전달됩니다.InteractiveObject
 Inherited 표시 객체가 포커스를 잃은 후 전달됩니다.InteractiveObject
 Inherited 사용자가 키를 누를 때 전달됩니다.InteractiveObject
 Inherited 사용자가 키보드를 사용하여 포커스를 바꾸려고 할 때 전달됩니다.InteractiveObject
 Inherited 사용자가 키를 놓을 때 전달됩니다.InteractiveObject
 Inherited Flash Player 윈도우에서 InteractiveObject 인스턴스 위에서 포인팅 장치 버튼을 누를 때 전달됩니다.InteractiveObject
 Inherited 사용자가 포인팅 장치를 사용하여 포커스를 바꾸려고 할 때 전달됩니다.InteractiveObject
 Inherited 포인팅 장치가 InteractiveObject 위에 있을 때 포인팅 장치를 움직이면 전달됩니다.InteractiveObject
 Inherited 포인팅 장치를 InteractiveObject 인스턴스에서 멀리 하면 전달됩니다.InteractiveObject
 Inherited Flash Player 윈도우에서 InteractiveObject 인스턴스 위로 포인팅 장치를 옮길 때 전달됩니다.InteractiveObject
 Inherited Flash Player 윈도우에서 InteractiveObject 인스턴스 위에서 포인팅 장치 버튼을 놓을 때 전달됩니다.InteractiveObject
 Inherited Flash Player 윈도우에서 InteractiveObject 인스턴스 위에 마우스를 놓고 휠을 굴릴 때 전달됩니다.InteractiveObject
 Inherited 표시 객체를 표시 목록에서 제거하려 할 때 전달됩니다.DisplayObject
 Inherited 표시 객체가 포함된 하위 트리를 제거하거나 표시 객체가 스테이지 표시 목록에서 직접 제거하려 할 때 전달됩니다.DisplayObject
 Inherited 표시 목록을 업데이트하고 렌더링하려 할 때 전달됩니다.DisplayObject
 Inherited 포인팅 장치를 InteractiveObject 인스턴스에서 멀리 하면 전달됩니다.InteractiveObject
 Inherited 포인팅 장치를 InteractiveObject 인스턴스 위로 옮길 때 전달됩니다.InteractiveObject
 Inherited 객체의 tabChildren 플래그 값이 변경될 때 전달됩니다.InteractiveObject
 Inherited 객체의 tabEnabled 플래그가 변경될 때 전달됩니다.InteractiveObject
 Inherited 객체의 tabIndex 속성 값이 변경될 때 전달됩니다.InteractiveObject
속성 정보
content속성
content:DisplayObject  [read-only]

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

load() 또는 loadBytes() 메서드를 사용하여 로드된 SWF 파일 또는 이미지(JPG, PNG 또는 GIF) 파일의 루트 표시 객체를 포함합니다.


구현
    public function get content():DisplayObject

오류
SecurityError — 로드된 SWF 파일 또는 이미지 파일이 사용자가 액세스할 수 없는 보안 샌드박스에 속해 있습니다. 로드된 SWF 파일의 경우, load() 또는 loadBytes() 메서드를 호출할 때 해당 파일에서 Security.allowDomain() 메서드를 호출함으로써 또는 로드하는 파일에서 SecurityDomain.currentDomain으로 설정된 securityDomain 속성을 사용하여 loaderContext 매개 변수를 지정함으로써 이러한 상황을 피할 수 있습니다.

참고 사항

contentLoaderInfo속성 
contentLoaderInfo:LoaderInfo  [read-only]

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

로드 중인 객체에 해당하는 LoaderInfo 객체를 반환합니다. LoaderInfo 객체는 Loader 객체와 로드된 내용 객체 간에 공유되며, 로드된 파일에 대한 로드 진행률 정보 및 통계를 제공합니다.

해당 로드와 연관된 이벤트는 Loader 객체의 contentLoaderInfo 속성에서 참조하는 LoaderInfo 객체에 의해 전달됩니다. contentLoaderInfo 속성을 유효한 LoaderInfo 객체로 설정하면 이벤트 수신자를 로드보다 먼저 객체에 추가할 수 있습니다.


구현
    public function get contentLoaderInfo():LoaderInfo

참고 사항

생성자 정보
Loader()생성자
public function Loader()

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

SWF, JPEG, GIF 또는 PNG 파일 등을 로드하는 데 사용할 수 있는 Loader 객체를 만듭니다. load() 메서드를 호출하여 해당 에셋을 Loader 인스턴스의 자식으로 로드합니다. 그런 다음, Loader 객체를 표시 목록에 추가할 수 있습니다(예: DisplayObjectContainer 인스턴스의 addChild() 메서드 사용). 에셋은 자신이 로드되는 Stage에 나타납니다.

표시 목록의 표시 객체 컨테이너에 해당 객체를 추가하지 않는 Loader 인스턴스의 "오프리스트(offlist)" 모드를 사용할 수도 있습니다. 이 모드에서 Loader 인스턴스는 응용 프로그램의 추가 모듈을 포함하는 SWF 파일을 로드하는 데 사용될 수 있습니다.

SWF 파일 로드가 완료되는 시점을 감지하기 위해 Loader 객체의 contentLoaderInfo 속성과 관련된 LoaderInfo 객체의 이벤트를 사용할 수 있습니다. 이때 모듈 SWF 파일의 코드가 실행되어 모듈을 초기화하고 시작할 수 있습니다. offlist 모드에서 Loader 인스턴스는 구성 요소 또는 미디어 에셋을 포함하는 SWF 파일을 로드하는 데 사용될 수 있습니다. 앞에서와 마찬가지로, LoaderInfo 객체 이벤트 알림을 사용하여 구성 요소가 로드를 완료하는 시점을 감지할 수 있습니다. 이때 응용 프로그램은 SWF 파일의 라이브러리에 있는 구성 요소와 미디어 에셋을 나타내는 ActionScript 3.0 클래스를 인스턴스화함으로써 해당 구성 요소와 에셋을 사용할 수 있습니다.

Loader 객체의 상태를 확인하려면 Loader 객체의 contentLoaderInfo 속성과 연관된 LoaderInfo 객체의 다음과 같은 이벤트를 모니터링합니다.

참고 사항

메서드 정보
close()메서드
public function close():void

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

현재 Loader 인스턴스에 대해 진행 중인 load() 메서드 작업을 취소합니다.

참고 사항

load()메서드 
public function load(request:URLRequest, context:LoaderContext = null):void

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

SWF, JPEG, 점진적 JPEG, 비애니메이션 GIF 또는 PNG 파일을 이 Loader 객체의 자식 객체로 로드합니다. 애니메이션 GIF 파일을 로드하는 경우 첫 번째 프레임만 표시됩니다. Loader 객체는 하나의 자식만을 포함할 수 있기 때문에 후속 load() 요청을 발생시키면 이전 요청(여전히 대기 중인 경우)이 종료되고 새 로드가 시작됩니다.

Loader 객체로 로드된 SWF 파일 또는 이미지는 Loader 객체의 부모 표시 객체로부터 위치, 회전 및 크기 조절 속성을 상속합니다.

이 메서드로 로드한 무비 또는 이미지를 제거하거나 진행 중인 로드 작업을 취소하려면 unload() 메서드를 사용합니다.

load() 메서드를 사용할 경우 다음과 같은 Flash Player 보안 모델을 고려해 볼 수 있습니다.

자세한 내용은 다음을 참조하십시오.

매개 변수

request:URLRequest — 로드할 SWF, JPEG, GIF 또는 PNG 파일의 절대 또는 상대 URL입니다. 상대 경로는 기본 SWF 파일에 상대적이어야 하며, 절대 URL은 프로토콜 참조(예: http:// 또는 file:///)를 포함해야 합니다. 파일 이름에는 디스크 드라이브 이름을 포함할 수 없습니다.
 
context:LoaderContext (default = null) — LoaderContext 객체로, 다음을 정의하는 속성을 갖습니다.
  • 객체를 로드할 때 Flash Player가 정책 파일의 존재를 확인해야 하는지 여부
  • 로드된 객체에 대한 ApplicationDomain
  • 로드된 객체에 대한 SecurityDomain

자세한 내용은 LoaderContext 클래스의 속성에 대한 설명을 참조하십시오.


이벤트
complete:Event — 파일 로드가 완료되면 연관된 LoaderInfo 객체에 의해 전달됩니다. complete이벤트는 항상 init 이벤트 이후에 전달됩니다.
 
httpStatus:HTTPStatusEvent — HTTP를 통해 네트워크 요청이 이루어지고 Flash Player가 해당 HTTP 상태 코드를 감지할 수 있을 때 연관된 LoaderInfo 객체에 의해 전달됩니다.
 
init:Event — 로드된 SWF 파일의 속성 및 메서드에 액세스할 수 있을 때 연관된 LoaderInfo 객체에 의해 전달됩니다. init 이벤트는 항상 complete 이벤트 이전에 전달됩니다.
 
ioError:IOErrorEvent — 로드 작업 실패를 유발하는 입력 또는 출력 오류가 발생할 때 연관된 LoaderInfo 객체에 의해 전달됩니다.
 
open:Event — 로드 작업이 시작될 때 연관된 LoaderInfo 객체에 의해 전달됩니다.
 
progress:ProgressEvent — 로드 작업이 진행되는 동안 데이터가 수신될 때 연관된 LoaderInfo 객체에 의해 전달됩니다.
 
unload:Event — 로드된 객체가 제거될 때 연관된 LoaderInfo 객체에 의해 전달됩니다.

오류
SecurityError LoaderContext.securityDomain의 값이 null 또는 SecurityDomain.currentDomain이어야 합니다. 이는 로드된 미디어를 원본 보안 샌드박스 또는 사용자 고유의 보안 샌드박스(정책 파일 필요)에만 배치할 수 있음을 의미합니다.
 
SecurityError — 로컬 SWF 파일이 LoaderContext.securityDomain을 null 이외의 다른 값으로 설정할 수 없습니다. 로컬에 위치하지 않은 미디어를 로컬 샌드박스로 가져오거나, 다른 로컬 미디어를 원본 샌드박스가 아닌 다른 위치에 배치하는 것은 허용되지 않습니다.
 
SecurityError context 매개 변수의 applicationDomain 또는 securityDomain 속성이 허용되지 않는 도메인에 대한 속성인 경우입니다.
 
SecurityError — 로컬 SWF 파일이 context 매개 변수의 securityDomain 속성을 사용하려는 경우입니다.

참고 사항

loadBytes()메서드 
public function loadBytes(bytes:ByteArray, context:LoaderContext = null):void

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

ByteArray 객체에 저장된 이진 데이터에서 로드합니다.

매개 변수

bytes:ByteArray — ByteArray 객체입니다. ByteArray의 내용은 Loader 클래스에서 지원되는 파일 형식(SWF, GIF, JPEG 또는 PNG)일 수 있습니다.
 
context:LoaderContext (default = null) — LoaderContext 객체입니다. LoaderContext 객체의 applicationDomain 속성만 적용되며, LoaderContext 객체의 checkPolicyFilesecurityDomain 속성은 적용되지 않습니다.


오류
ArgumentError — ByteArray 객체의 length 속성이 0보다 작거나 같은 경우입니다.
 
IllegalOperationError context 매개 변수의 checkPolicyFile 또는 securityDomain 속성이 null이 아닌 경우입니다.
 
SecurityError — 제공된 context 속성의 applicationDomain 속성이 허용되지 않는 도메인에 대한 속성인 경우입니다.

참고 사항

unload()메서드 
public function unload():void

언어 버전 : ActionScript 3.0
Player 버전 : Flash Player 9

load() 메서드를 사용하여 로드된 이 Loader 객체의 자식을 제거합니다. 관련된 LoaderInfo 객체의 propertynull로 재설정됩니다. 해당 자식은 다른 객체에서 참조할 수 있기 때문에 반드시 삭제되지는 않지만, 더 이상 Loader 객체의 자식이 아닙니다.

자식 SWF 파일을 언로드하기 전에 해당 자식 SWF 파일의 객체(예: LocalConnection, NetConnection, NetStream 및 Sound)에 있는 모든 스트림을 확실하게 닫는 것이 좋습니다. 그렇지 않으면 자식 SWF 파일이 언로드된 경우에도 자식 SWF 파일의 오디오가 계속해서 재생될 수 있습니다. 자식 SWF 파일의 스트림을 닫으려면 이벤트 리스너를 unload 이벤트에 대해 수신하는 자식에 추가합니다. 부모가 Loader.unload()를 호출하면 unload 이벤트가 자식에 전달됩니다. 다음 코드는 이렇게 하는 방법을 보여 줍니다.

function closeAllStreams(evt:Event) { myNetStream.close(); mySound.close(); myNetConnection.close(); myLocalConnection.close(); } myMovieClip.loaderInfo.addEventListener(Event.UNLOAD, closeAllStreams);

참고 사항

예제 예제 사용 방법
LoaderExample.as

다음 예제에서는 LoaderExample 클래스를 사용하여 다양한 이벤트 리스너를 사용하는 방법을 보여 줍니다. 이는 다음 단계로 이루어집니다.
  1. 이미지 파일의 이름과 위치를 나타내는 url 속성이 만들어집니다.
  2. LoaderExample 생성자에서 loader라는 새 Loader 객체를 만든 후 단계 3에 설명된 configureListeners() 메서드에 전달합니다.
  3. 생성자가 파일 이름 및 위치를 나타내도록 전달된 url이 있는 새 URLRequest 객체 request를 만듭니다.
  4. request 객체가 loader 객체의 load() 메서드로 전달되며, 이 메서드는 이미지를 표시 목록으로 로드합니다.
  5. clickHandler 이벤트 리스너가 로더에서 click 이벤트에 대해 등록됩니다. 마우스를 클릭하면 로드된 이미지가 언로드됩니다.
  6. configureListeners() 메서드가 다음 메서드를 사용하여 일곱 개의 이벤트 리스너를 추가합니다.
    • completeHandler() 메서드는 이미지 로드가 완료되면 실행됩니다.
    • httpStatusHandler() 메서드는 이미지가 로컬에 로드되지 않은 경우 네트워크 요청이 사용 가능하게 되고 Flash Player에서 해당 요청을 감지할 수 있을 때만 실행됩니다.
    • initHandler() 메서드는 completeHandler() 메서드 이전 및 progressHandler() 메서드 이후에 실행됩니다. 일반적으로 SWF 파일을 로드할 경우에는 init 이벤트가 더 유용합니다.
    • ioErrorHandler() 메서드는 이미지 파일을 사용할 수 없거나 액세스할 수 없는 경우 실행됩니다.
    • openHandler() 메서드는 이미지 파일을 처음 열 때 실행됩니다.
    • progressHandler() 메서드는 이미지 파일을 로드하기 시작할 때 실행되며 이미지 로드가 완료되면 다시 한 번 실행됩니다.
    • unLoadHandler() 메서드는 사용자가 이미지를 클릭할 때 unload() 메서드를 사용하여 이미지가 언로드되면 실행됩니다.

검토를 진행할 때는 다음과 같은 요구 사항을 염두에 두어야 합니다.

package {
    import flash.display.Loader;
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.URLRequest;

    public class LoaderExample extends Sprite {
        private var url:String = "Image.gif";

        public function LoaderExample() {
            var loader:Loader = new Loader();
            configureListeners(loader.contentLoaderInfo);
            loader.addEventListener(MouseEvent.CLICK, clickHandler);

            var request:URLRequest = new URLRequest(url);
            loader.load(request);

            addChild(loader);
        }

        private function configureListeners(dispatcher:IEventDispatcher):void {
            dispatcher.addEventListener(Event.COMPLETE, completeHandler);
            dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
            dispatcher.addEventListener(Event.INIT, initHandler);
            dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            dispatcher.addEventListener(Event.OPEN, openHandler);
            dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            dispatcher.addEventListener(Event.UNLOAD, unLoadHandler);
        }

        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
        }

        private function httpStatusHandler(event:HTTPStatusEvent):void {
            trace("httpStatusHandler: " + event);
        }

        private function initHandler(event:Event):void {
            trace("initHandler: " + event);
        }

        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }

        private function openHandler(event:Event):void {
            trace("openHandler: " + event);
        }

        private function progressHandler(event:ProgressEvent):void {
            trace("progressHandler: bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        }

        private function unLoadHandler(event:Event):void {
            trace("unLoadHandler: " + event);
        }

        private function clickHandler(event:MouseEvent):void {
            trace("clickHandler: " + event);
            var loader:Loader = Loader(event.target);
            loader.unload();
        }
    }
}




 

이 페이지에 의견 추가되면 전자 메일 알림 받기 | 의견 보고서

현재 페이지: http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/display/Loader.html