| Package | flash.display |
| Class | public class Loader |
| Inheritance | Loader DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
load() Methods를 사용합니다. 로드 된 표시 object는 Loader object의 아이로서 추가됩니다.
텍스트 또는 바이너리 데이터를 로드하려면 URLLoader 클래스를 사용합니다.
Loader 클래스는, Inheritance하는 다음의 Methods를 재정의(override) 합니다. 이것은, Loader object가 가질 수가 있는 것은 1 살의 child 표시 object, 즉 로드하는 object에 한정되어 있기 (위해)때문에입니다. 다음의 Methods를 호출하면 예외가 슬로우 됩니다. addChild(),addChildAt(),removeChild(),removeChildAt(), 및 setChildIndex(). 로드 된 표시 object를 삭제하려면 , 부모의 DisplayObjectContainer 자 배열로부터 Loader object를 삭제할 필요가 있습니다.
메모: ActionScript 2.0 의 MovieClipLoader 클래스와 LoadVars 클래스는, ActionScript 3.0 에서는 사용되지 않습니다. 그것들은, Loader 클래스와 URLLoader 클래스로 옮겨졌습니다.
Loader 클래스를 사용할 때는, Flash Player 시큐러티 모델을 고려해 주세요.
System.allowDomain() 또는 System.allowInsecureDomain() Methods의 호출에 의해 크로스 스크립트에 관한 결정이 승인되고 있었을 경우는 가능합니다. 상세한 것에 대하여는, 다음의 주제를 참조해 주세요.
신뢰되어 있지 않은 소스 (Loader object의 루트 SWF 파일의 도메인 이외의 도메인등)로부터 SWF 파일을 로드하는 경우는, 다음의 코드에 나타내도록(듯이), Loader object에 대해서 마스크를 정의해, 로드 된 컨텐츠 (Loader object의 아이)가 그 마스크의 외부에 있는 스테이지의 일부분에 묘화 되지 않게 할 수가 있습니다.
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);
See also
| property | 정의 | ||
|---|---|---|---|
![]() | accessibilityProperties : AccessibilityProperties
이 표시 object의 현재의 accessibility options입니다.
| DisplayObject | |
![]() | alpha : Number
지정된 object의 알파 투명도 값을 나타냅니다.
| DisplayObject | |
![]() | blendMode : String
사용하는 브렌드 모드를 지정하는 BlendMode 클래스의 값입니다.
| DisplayObject | |
![]() | cacheAsBitmap : Boolean
true 로 설정되어 있는 경우, 표시 object의 내부 비트 맵 표현이 Flash Player 에 캐쉬됩니다. | DisplayObject | |
![]() | constructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor 함수에의 참조입니다.
| Object | |
| content : DisplayObject
[read-only]
load() Methods를 사용해 로드 된 SWF 파일 또는 이미지 (JPG, PNG, 또는 GIF) 파일의 루트 표시 object가 포함됩니다. | Loader | ||
| contentLoaderInfo : LoaderInfo
[read-only]
로드 되고 있는 object에 대응하는 LoaderInfo object를 돌려줍니다.
| Loader | ||
![]() | contextMenu : ContextMenu
이 object에 관련지을 수 있었던 context menu를 지정합니다.
| InteractiveObject | |
![]() | doubleClickEnabled : Boolean
object가
doubleClick 이벤트를 받을지 어떨지를 지정합니다. | InteractiveObject | |
![]() | filters : Array
표시 object에 현재 관련지을 수 있고 있는 각 필터 object가 포함되고 있는 인덱스 첨부의 배열입니다.
| DisplayObject | |
![]() | focusRect : Object
이 object가 포커스 구형을 표시할지 어떨지를 지정합니다.
| InteractiveObject | |
![]() | height : Number
표시 object의 높이를 나타냅니다 (픽셀 단위).
| DisplayObject | |
![]() | loaderInfo : LoaderInfo
이 표시 object가 속하는 파일의 로드 정보를 포함한 LoaderInfo object를 돌려줍니다.
| DisplayObject | |
![]() | mask : DisplayObject
호출원 display object는, 지정된
mask object에 의해 마스크 됩니다. | DisplayObject | |
![]() | mouseChildren : Boolean
object의 아이에 대해서 마우스가 유효한가 어떤가를 조사합니다.
| DisplayObjectContainer | |
![]() | mouseEnabled : Boolean
이 object가 마우스 메세지를 받아들일지 어떨지를 지정합니다.
| InteractiveObject | |
![]() | mouseX : Number
마우스 위치의 x 좌표를 나타냅니다 (픽셀 단위).
| DisplayObject | |
![]() | mouseY : Number
마우스 위치의 y 좌표를 나타냅니다 (픽셀 단위).
| DisplayObject | |
![]() | name : String
DisplayObject 의 인스턴스명을 나타냅니다.
| DisplayObject | |
![]() | numChildren : int
이 object의 아이의 수를 돌려줍니다.
| DisplayObjectContainer | |
![]() | opaqueBackground : Object
표시 object가 특정의 배경색으로 불투명한지 어떤지를 지정합니다.
| DisplayObject | |
![]() | parent : DisplayObjectContainer
이 표시 object를 포함한 DisplayObjectContainer object를 나타냅니다.
| DisplayObject | |
![]() | prototype : Object
[static]
클래스 또는 함수 object의 prototype object에의 참조입니다.
| Object | |
![]() | root : DisplayObject
로드 된 SWF 파일내 display object의 경우,
root property는 그 SWF 파일이 나타내는 표시 리스트의 트리 구조 부분의 맨 위에 있는 표시 object가 됩니다. | DisplayObject | |
![]() | rotation : Number
DisplayObject 인스턴스의 원래의 위치로부터의 회전각을 번단위로 가리킵니다.
| DisplayObject | |
![]() | scale9Grid : Rectangle
현재 유효한 확대 / 축소 격자입니다.
| DisplayObject | |
![]() | scaleX : Number
기준점으로부터 적용되는 object의 수평 스케일 (
percentage)을 나타냅니다. | DisplayObject | |
![]() | scaleY : Number
object의 기준점으로부터 적용되는 object의 수직 스케일 (
percentage)을 나타냅니다. | DisplayObject | |
![]() | scrollRect : Rectangle
표시 object의 스크롤 구형의 경계.
| DisplayObject | |
![]() | stage : Stage
표시 object의 스테이지.
| DisplayObject | |
![]() | tabChildren : Boolean
object의 아이에 대해서 탭이 유효한가 어떤가를 조사합니다.
| DisplayObjectContainer | |
![]() | tabEnabled : Boolean
이 object가 탭 순서순서에 포함될지 어떨지를 지정합니다.
| InteractiveObject | |
![]() | tabIndex : int
SWF 파일내의 object의 탭 순서를 지정합니다.
| InteractiveObject | |
![]() | textSnapshot : TextSnapshot
이 DisplayObjectContainer 인스턴스의 TextSnapshot object를 돌려줍니다.
| DisplayObjectContainer | |
![]() | transform : Transform
표시 object의 매트릭스, 칼라 변환, 픽셀 경계에 관계하는 property를 가지는 object입니다.
| DisplayObject | |
![]() | visible : Boolean
표시 object가 가시인가 어떤가를 나타냅니다.
| DisplayObject | |
![]() | width : Number
표시 object의 폭을 나타냅니다 (픽셀 단위).
| DisplayObject | |
![]() | x : Number
친 DisplayObjectContainer 의 로컬 좌표를 기준으로 한 DisplayObject 인스턴스의 x 좌표를 나타냅니다.
| DisplayObject | |
![]() | y : Number
친 DisplayObjectContainer 의 로컬 좌표를 기준으로 한 DisplayObject 인스턴스의 y 좌표를 나타냅니다.
| DisplayObject | |
| Methods | 정의 | ||
|---|---|---|---|
| Loader ()
SWF, JPEG, GIF, 또는 PNG 파일등의 파일을 로드하는데 사용할 수 있는 Loader object를 작성합니다.
| Loader | ||
![]() | addChild (child:DisplayObject ):DisplayObject
이 DisplayObjectContainer 인스턴스에 child DisplayObject 인스턴스를 추가합니다.
| DisplayObjectContainer | |
![]() | addChildAt (child:DisplayObject , index:int ):DisplayObject
이 DisplayObjectContainer 인스턴스에 child DisplayObject 인스턴스를 추가합니다.
| DisplayObjectContainer | |
![]() | addEventListener (type:String , listener:Function , useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
event listener objects를 EventDispatcher object에 등록해, listener가 이벤트의 통지를 받도록(듯이) 합니다.
| EventDispatcher | |
![]() | areInaccessibleObjectsUnderPoint (point:Point ):Boolean
특정의
point 포인트를 지정해 호출한 DisplayObjectContainer.getObjectsUnderPoint() Methods로부터 돌려주어진 리스트에, 시큐러티상의 제약을 위해서(때문에) 생략 되는 표시 object가 있을지 어떨지를 나타냅니다. | DisplayObjectContainer | |
| close ():void
Loader 인스턴스에 대해서 현재 진행중의
load() Methods의 처리를 캔슬합니다. | Loader | ||
![]() | contains (child:DisplayObject ):Boolean
지정된 표시 object가, DisplayObjectContainer 인스턴스의 아이인지, 인스턴스 자체인지를 지정합니다.
| DisplayObjectContainer | |
![]() | dispatchEvent (event:Event ):Boolean
이벤트를 event 플로우(flow)에 dispatch합니다.
| EventDispatcher | |
![]() | getBounds (targetCoordinateSpace:DisplayObject ):Rectangle
targetCoordinateSpace object의 좌표계를 기준으로 해, 표시 object의 area를 정의하는 구형을 돌려줍니다. | DisplayObject | |
![]() | getChildAt (index:int ):DisplayObject
지정의 인덱스 위치에 있는 child 표시 object 인스턴스를 돌려줍니다.
| DisplayObjectContainer | |
![]() | getChildByName (name:String ):DisplayObject
지정된 이름에 일치하는 child 표시 object를 돌려줍니다.
| DisplayObjectContainer | |
![]() | getChildIndex (child:DisplayObject ):int
child DisplayObject 인스턴스의 인덱스 위치를 돌려줍니다. | DisplayObjectContainer | |
![]() | getObjectsUnderPoint (point:Point ):Array
지정된 포인트아래에 있어, 이 DisplayObjectContainer 인스턴스의 child 또는 손자등인 object의 배열을 돌려줍니다.
| DisplayObjectContainer | |
![]() | getRect (targetCoordinateSpace:DisplayObject ):Rectangle
셰이프상의 선을 제외해,
targetCoordinateSpace Parameters에 의해 정의된 좌표계에 근거해, 표시 object의 경계를 정의하는 구형을 돌려줍니다. | DisplayObject | |
![]() | globalToLocal (point:Point ):Point
point object를 스테이지 (글로벌) 좌표로부터 표시 object의 (로컬) 좌표로 변환합니다. | DisplayObject | |
![]() | hasEventListener (type:String ):Boolean
EventDispatcher object에, 특정의 event 타입에 대해서 등록된 listener가 있을지 어떨지를 확인합니다.
| EventDispatcher | |
![]() | hasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
| Object | |
![]() | hitTestObject (obj:DisplayObject ):Boolean
표시 object를 평가해,
obj 표시 object와 중복 또는 교차할지 어떨지를 조사합니다. | DisplayObject | |
![]() | hitTestPoint (x:Number , y:Number , shapeFlag:Boolean = false):Boolean
표시 object를 평가해,
x 및 y Parameters로 지정된 포인트와 중복 또는 교차할지 어떨지를 조사합니다. | DisplayObject | |
![]() | isPrototypeOf (theClass:Object ):Boolean
Object 클래스의 인스턴스가, Parameters로서 지정된 object의 prototype 체인내에 있을지 어떨지를 나타냅니다.
| Object | |
| load (request:URLRequest , context:LoaderContext = null):void
SWF, JPEG, 프로그래시브 JPEG, 비애니메이션 GIF, 또는 PNG 파일을, 이 Loader object의 아이인 object에 로드합니다.
| Loader | ||
| loadBytes (bytes:ByteArray , context:LoaderContext = null):void
ByteArray object에 보관되고 있는 바이너리 데이터로부터 로드합니다.
| Loader | ||
![]() | localToGlobal (point:Point ):Point
point object를 표시 object의 (로컬) 좌표로부터 스테이지 (글로벌) 좌표로 변환합니다. | DisplayObject | |
![]() | propertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
| Object | |
![]() | removeChild (child:DisplayObject ):DisplayObject
DisplayObjectContainer 인스턴스의 child 리스트로부터 지정의
child DisplayObject 인스턴스를 삭제합니다. | DisplayObjectContainer | |
![]() | removeChildAt (index:int ):DisplayObject
DisplayObjectContainer 의 child 리스트의 지정된
index 위치로부터 child DisplayObject 를 삭제합니다. | DisplayObjectContainer | |
![]() | removeEventListener (type:String , listener:Function , useCapture:Boolean = false):void
EventDispatcher object로부터 listener를 삭제합니다.
| EventDispatcher | |
![]() | setChildIndex (child:DisplayObject , index:int ):void
표시 object 컨테이너의 기존의 아이의 위치를 변경합니다.
| DisplayObjectContainer | |
![]() | setPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
| Object | |
![]() | swapChildren (child1:DisplayObject , child2:DisplayObject ):void
지정된 2 살의 child object의 z 순서 (겹침순서)를 바꿔 넣습니다.
| DisplayObjectContainer | |
![]() | swapChildrenAt (index1:int , index2:int ):void
아이 리스트내의 지정된 인덱스 위치에 해당하는 2 살의 child object의 z 순서 (겹침순서)를 바꿔 넣습니다.
| DisplayObjectContainer | |
![]() | toString ():String
지정된 object의 string 표현을 돌려줍니다.
| Object | |
unload ():void
load() Methods를 사용해 로드 된, 이 Loader object의 아이를 삭제합니다. | Loader | ||
![]() | valueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
| Object | |
![]() | willTrigger (type:String ):Boolean
지정된 event 타입에 대해, 이 EventDispatcher object 또는 그 조상에게 event listener가 등록되어 있는지 어떤지를 확인합니다.
| EventDispatcher | |
| content | property |
content:DisplayObject [read-only]
load() Methods를 사용해 로드 된 SWF 파일 또는 이미지 (JPG, PNG, 또는 GIF) 파일의 루트 표시 object가 포함됩니다.
public function get content():DisplayObject
SecurityError — 로드 된 SWF 파일 또는 이미지 파일은, 액세스권한이 주어지지 않은 시큐러티 Sandbox 에 속하고 있습니다. 로드 된 SWF 파일의 경우, 파일로 Security.allowDomain() Methods를 호출하는 것에 의해, 혹은 로드하는 측의 파일로 load() 또는 loadBytes() Methods를 호출할 때 securityDomain property의 loaderContext Parameters를 SecurityDomain.currentDomain 로 설정하는 것에 의해, 이 상황을 회피할 수 있습니다.
|
See also
| contentLoaderInfo | property |
contentLoaderInfo:LoaderInfo [read-only]로드 되고 있는 object에 대응하는 LoaderInfo object를 돌려줍니다. LoaderInfo object는 Loader object와 로드 된 컨텐츠 object와의 사이에 공유됩니다. LoaderInfo object는, 로드의 진행 상황에 관한 정보와 로드 된 파일에 관한 통계를 제공합니다.
Implements public function get contentLoaderInfo():LoaderInfo
See also
| Loader | () | constructor |
public 함수 Loader()
SWF, JPEG, GIF, 또는 PNG 파일등의 파일을 로드하는데 사용할 수 있는 Loader object를 작성합니다. Assets을 Loader 인스턴스의 아이로서 로드하려면 ,load() Methods를 호출합니다. 그 후, Loader object를 표시 리스트에 추가할 수 있습니다. 예를 들어, DisplayObjectContainer 인스턴스의 addChild() Methods를 사용해 추가합니다. Assets은 로드 되면 스테이지에 표시됩니다.
Loader 인스턴스를 "리스트외" 에서, 즉, 표시 리스트상 display object 컨테이너에 추가하지 않고 사용할 수도 있습니다. 이 모드의 경우, Loader 인스턴스를 사용해, 어플리케이션의 추가 모듈을 포함한 SWF 파일을 로드할 수가 있습니다.
SWF 파일의 로드가 완료한 것을 검출하려면 , Loader object의 contentLoaderInfo property에 관련지을 수 있었던 LoaderInfo object의 이벤트를 사용할 수 있습니다. 그 시점에서, 모듈 SWF 파일내의 코드를 실행해, 모듈을 초기화해, 개시할 수가 있습니다. 리스트외 모드에서는, Loader 인스턴스를 사용해, 컴퍼넌트 또는 미디어 Assets을 포함한 SWF 파일을 로드할 수도 있습니다. 이 경우도, LoaderInfo object의 event 통지를 사용해, 컴퍼넌트의 로드가 완료한 것을 검출할 수 있습니다. 그 시점에서, 어플리케이션은 SWF 파일의 프로그램 라이브러리내의 컴퍼넌트와 미디어 Assets의 사용을 개시할 수 있습니다. 이것은, 그러한 컴퍼넌트와 Assets을 나타내는 ActionScript 3.0 클래스를 인스턴스화하는 것에 의해 실시합니다.
Loader object 상태를 판별하려면 , Loader object의 contentLoaderInfo property에 관련지을 수 있었던 LoaderInfo object의 다음의 이벤트를 감시합니다.
open 이벤트는, 로드가 개시했을 때에 dispatch됩니다. ioError 또는 securityError 이벤트는, 파일을 로드할 수 없는 경우, 혹은 로드 처리중에 에러가 발생했을 경우에 dispatch됩니다. progress 이벤트는, 파일이 로드 되고 있는 동안, 계속적으로 발생합니다. complete 이벤트는, 파일의 다운로드가 완료했을 때에 dispatch됩니다. 다만, 이 시점에서는, 로드 된 무비 클립의 Methods와 property는 아직 사용할 수 없습니다. init 이벤트는, 로드 된 SWF 파일의 property 및 Methods에 액세스 할 수 있게 되면, dispatch됩니다. 그 때문에, 로드 된 SWF 파일에 대해서 각종의 조작을 개시할 수 있습니다. 이 이벤트는,complete 핸들러의 전에 dispatch됩니다. 스트리밍 SWF 파일의 경우,init 이벤트는 complete 이벤트보다 꽤 전에 발생하는 일이 있습니다. 대부분의 경우,init 핸들러를 사용합니다. See also
| close | () | Methods |
| load | () | Methods |
public function load(request:URLRequest , context:LoaderContext = null):void
SWF, JPEG, 프로그래시브 JPEG, 비애니메이션 GIF, 또는 PNG 파일을, 이 Loader object의 아이인 object에 로드합니다. 애니메이션 GIF 파일을 읽어들이면, 선두의 프레임만 표시됩니다. Loader object에는 아이를 1 살밖에 포함할 수가 없기 때문에, 후속의 load() 요구를 발행하면 직전의 요구 (보류중이면)를 종료해, 새롭게 로드를 개시합니다.
Loader object에 로드한 SWF 파일 또는 이미지는, 그 Loader object의 부모 display object의 위치, 회전, 및 확대/축소의 각 property를 Inheritance합니다.
이 Methods를 사용해 로드 된 무비 또는 이미지를 삭제하거나 진행중의 로드 처리를 캔슬하려면 ,unload() Methods를 사용합니다.
load() Methods를 사용할 때는, Flash Player 시큐러티 모델을 고려해 주세요.
Security.allowDomain() Methods의 호출에 의해 크로스 스크립트에 관한 결정이 승인되고 있었을 경우는 가능합니다. 상세한 것에 대하여는, 다음의 주제를 참조해 주세요.
request:URLRequest — 로드하는 SWF, JPEG, GIF, 또는 PNG 파일의 절대 URL 또는 상대 URL. 상대 패스의 경우는, 메인 SWF 파일을 기준으로 할 필요가 있습니다. 절대 URL 의 경우는, http:// 나 file:/// 등의 프로토콜 참조도 포함할 필요가 있습니다. 파일명에는, 드라이브 지정을 포함할 수 없습니다.
|
|
context:LoaderContext (default = null) — 다음의 정의를 실시하는 property가 있는, LoaderContext object입니다.
완전한 상세한 것에 대하여는,LoaderContext 클래스의 property의 설명을 참조해 주세요. |
complete:Event — 파일의 로드가 완료했을 때에 dispatch됩니다. complete 이벤트는, 항상,init 이벤트의 뒤에 dispatch됩니다. |
|
httpStatus:HTTPStatusEvent — 네트워크 요구가 HTTP 상에서 행해져 Flash Player 가 HTTP 상황 코드를 검출할 수 있는 경우에 dispatch됩니다. |
|
init:Event — 로드 된 SWF 파일의 property 및 Methods에 액세스 할 수 있는 경우에 dispatch됩니다. init 이벤트는, 항상,complete 이벤트의 전에 dispatch됩니다. |
|
ioError:IOErrorEvent — 입출력 에러가 발생해 로드 처리가 실패했을 때에 dispatch됩니다. |
|
open:Event — 로드 처리가 개시했을 때에 dispatch됩니다. |
|
progress:ProgressEvent — 로드 처리를 실행중에 데이터를 수신했을 때에 dispatch됩니다. |
|
securityError:SecurityErrorEvent — 로드 처리로, 시큐러티 Sandbox 의 밖에 있는 서버로부터 데이터를 로드하려고 했을 때에 dispatch됩니다. |
|
unload:Event — 로드 된 object가 삭제되었을 때에 dispatch됩니다. |
SecurityError — LoaderContext.securityDomain 의 값은,null 또는 SecurityDomain.currentDomain 의 언젠가일 필요가 있습니다. 즉, 로드 된 미디어는, 통상의 시큐러티 Sandbox 또는 독자적인 Sandbox 의 어느 쪽인가에 밖에 배치할 수 없습니다. 후자의 경우는, policy 파일이 필요합니다.
|
|
SecurityError — 로컬 SWF 파일에서는, LoaderContext.securityDomain 에 null 이외의 값을 설정할 수 없습니다. 또, 로컬이 아닌 미디어의 로컬 샌드 박스에의 임포트, 및 로컬 미디어의 통상의 Sandbox 이외의 장소에의 배치는 허가되지 않습니다.
|
|
SecurityError — 이 SWF 파일이, 신뢰되지 않는 코드로서 로컬의 샌드 박스에 놓여져 있던 것으로, 네트워크의 URL 에 액세스 하려고 했을 경우
|
|
SecurityError — context Parameters의 applicationDomain 또는 securityDomain property가, 허가되어 있지 않은 도메인의 것이었을 경우
|
|
SecurityError — 로컬 SWF 파일이,context Parameters의 securityDomain property를 사용하려고 했을 경우
|
See also
| loadBytes | () | Methods |
public function loadBytes(bytes:ByteArray , context:LoaderContext = null):void ByteArray object에 보관되고 있는 바이너리 데이터로부터 로드합니다.
Parametersbytes:ByteArray — ByteArray object입니다. ByteArray 의 내용으로서는, Loader 클래스가 지원(support)하는 SWF, GIF, JPEG, PNG 가운데 임의의 파일 형식을 사용할 수 있습니다.
|
|
context:LoaderContext (default = null) — LoaderContext object입니다. LoaderContext object의 applicationDomain property만이 적용되어 LoaderContext object의 checkPolicyFile 및 securityDomain property는 적용되지 않습니다.
|
ArgumentError — ByteArray object의 length property가 0 이하였을 경우
|
|
IllegalOperationError — context Parameters의 checkPolicyFile 또는 securityDomain property가 null 이외에서 만났을 경우
|
|
SecurityError — 받은 context property의 applicationDomain property가, 허가되어 있지 않은 도메인의 것이었을 경우
|
See also
| unload | () | Methods |
public function unload():void
load() Methods를 사용해 로드 된, 이 Loader object의 아이를 삭제합니다. 관련한 LoaderInfo object의 property 는 null 에 리셋트 됩니다. 다른 object가 참조하고 있을 가능성이 있기 (위해)때문에, 아이는 반드시 파기된다고는 할 수 없습니다. 그러나, Loader object의 아이는 아니게 됩니다.
아이 SWF 파일을 언로드하기 전에, LocalConnection, NetConnection, NetStream, Sound object 등, child SWF 파일의 object내의 스트림(Stream)을 모두 명시적으로 닫아 두는 것을 추천합니다. 그렇게 하지 않았던 경우는, child SWF 파일이 언로드된 후도, child SWF 파일의 오디오의 재생이 계속되는 경우가 있습니다. child SWF 파일의 스트림(Stream)을 닫으려면 ,unload 이벤트를 받는 아이에게 event listener를 추가합니다. 부모가 Loader.unload() 를 호출하면,unload 이벤트가 아이에 대해서 dispatch됩니다. 다음의 코드는, 이러한 처리를 실시하는 예를 나타냅니다.
function closeAllStreams(evt:Event) {
myNetStream.close();
mySound.close();
myNetConnection.close();
myLocalConnection.close();
}
myMovieClip.loaderInfo.addEventListener(Event.UNLOAD, closeAllStreams);
See also
url property를 작성합니다. 이것은 이미지 파일의 장소와 이름입니다. LoaderExample constructor 에서는,loader 라는 이름의 새로운 Loader object가
작성되어 순서 3 으로 설명하는 configureListeners() Methods에게 건네집니다. request 를 작성해, 파일명과 장소를 알 수 있도록(듯이),url 를 건네줍니다. request object가 loader object의
load() Methods에게 건네집니다. 이것에 의해, 이미지가 표시 리스트에 로드 됩니다. clickHandler event listener가 로더의 click 이벤트에 대해서 등록됩니다.
마우스를 클릭하면, 로드 된 이미지는 언로드됩니다. configureListeners() Methods는, 다음의 Methods를 사용해, 7 개의 event listener를 추가합니다. completeHandler() Methods는, 이미지의 로드가 완료했을 때에 실행됩니다. httpStatusHandler() Methods는, 이미지가 로컬에 로드 되지 않는 경우로,
네트워크 요구를 실시할 수가 있어 Flash Player 가 그것을 검출할 수 있는 경우에게만 실행됩니다. initHandler() Methods는,completeHandler() Methods의 전,
한편 progressHandler() Methods의 뒤에 실행됩니다. 통상, SWF 파일을 로드하는 경우는
init 이벤트가 편리합니다. ioErrorHandler() Methods는, 이미지 파일을 사용할 수 없는지, 이미지 파일에 액세스 할 수 없는 경우에
실행됩니다. openHandler() Methods는, 이미지 파일이 최초로 열렸을 때에 실행됩니다. progressHandler() Methods는, 이미지 파일의 로드가 개시했을 때에 실행되어
이미지의 로드가 완료했을 때에 다시 실행됩니다. unLoadHandler() Methods는, 유저가 이미지를 클릭했을 때에
unload() Methods를 사용해 이미지가 언로드되었을 경우에 실행됩니다. 다음의 요건에 주의해 주세요.
complete 이벤트
( 및 필요에 따라서 ioError 이벤트)(으)로 충분합니다.
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://flexdocs.kr/docs/flex2/langref/flash/display/Loader.html