パッケージflash.display
クラスpublic class Loader
継承Loader Inheritance DisplayObjectContainer Inheritance InteractiveObject Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

Loader クラスは、SWF ファイルまたはイメージ (JPG、PNG、または GIF) ファイルをロードするために使用します。ロードを開始するには load() メソッドを使用します。ロードされた表示オブジェクトは Loader オブジェクトの子として追加されます。

テキストまたはバイナリデータをロードするには URLLoader クラスを使用します。

Loader クラスは、継承する次のメソッドをオーバーライドします。これは、Loader オブジェクトが持つことができるのは 1 つの子表示オブジェクト、つまりロードするオブジェクトに限られているためです。次のメソッドを呼び出すと例外がスローされます。メソッドは、addChild()addChildAt()removeChild()removeChildAt()、および setChildIndex() です。ロードされた表示オブジェクトを削除するには、親の DisplayObjectContainer 子配列から Loader オブジェクトを削除する必要があります。

メモ : ActionScript 2.0 の MovieClipLoader クラスと LoadVars クラスは、ActionScript 3.0 では使用されません。それらは、Loader クラスと URLLoader クラスに置き換えられました。

Loader クラスを使用するときは、Flash Player および Adobe AIR のセキュリティモデルを考慮してください。

ただし、AIR では、アプリケーションセキュリティサンドボックス内のコンテンツ(AIR アプリケーションと共にインストールされたコンテンツ)は、これらのセキュリティ制限による制限を受けません。

詳しくは、次のトピックを参照してください。

信頼されていないソース(Loader オブジェクトのルート SWF ファイルのドメイン以外のドメインなど)から SWF ファイルを読み込む場合は、次のコードに示すように、Loader オブジェクトに対してマスクを定義して、読み込まれたコンテンツ(Loader オブジェクトの子)がそのマスクの外部にあるステージの一部分に描画されないようにすることができます。

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
Core display classes
Loading display objects
Taking advantage of mipmapping


パブリックプロパティ
 プロパティ定義元
 InheritedaccessibilityProperties : AccessibilityProperties
この表示オブジェクトの現在のアクセシビリティオプションです。
DisplayObject
 Inheritedalpha : Number
指定されたオブジェクトのアルファ透明度値を示します。
DisplayObject
 InheritedblendMode : String
使用するブレンドモードを指定する BlendMode クラスの値です。
DisplayObject
 InheritedblendShader : Shader
[書き込み専用] 前景と背景のブレンドに使用するシェーダを設定します。
DisplayObject
 InheritedcacheAsBitmap : Boolean
true に設定されている場合、表示オブジェクトの内部ビットマップ表現が Flash Player または Adobe AIR にキャッシュされます。
DisplayObject
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  content : DisplayObject
[読み取り専用] load() または loadBytes() メソッドを使用して読み込まれた SWF ファイルまたはイメージ(JPG、PNG、または GIF)ファイルのルート表示オブジェクトが含まれます。
Loader
  contentLoaderInfo : LoaderInfo
[読み取り専用] ロードされているオブジェクトに対応する LoaderInfo オブジェクトを返します。
Loader
 InheritedcontextMenu : NativeMenu
このオブジェクトに関連付けられたコンテキストメニューを指定します。
InteractiveObject
 InheriteddoubleClickEnabled : Boolean
オブジェクトが doubleClick イベントを受け取るかどうかを指定します。
InteractiveObject
 Inheritedfilters : Array
表示オブジェクトに現在関連付けられている各フィルタオブジェクトが格納されているインデックス付きの配列です。
DisplayObject
 InheritedfocusRect : Object
このオブジェクトがフォーカス矩形を表示するかどうかを指定します。
InteractiveObject
 Inheritedheight : Number
表示オブジェクトの高さを示します (ピクセル単位)。
DisplayObject
 InheritedloaderInfo : LoaderInfo
[読み取り専用] この表示オブジェクトが属するファイルのロード情報を含む LoaderInfo オブジェクトを返します。
DisplayObject
 Inheritedmask : DisplayObject
呼び出し元の表示オブジェクトは、指定された mask オブジェクトによってマスクされます。
DisplayObject
 InheritedmouseChildren : Boolean
オブジェクトの子に対してマウスが有効かどうかを調べます。
DisplayObjectContainer
 InheritedmouseEnabled : Boolean
このオブジェクトがマウスメッセージを受け取るかどうかを指定します。
InteractiveObject
 InheritedmouseX : Number
[読み取り専用] マウス位置の x 座標を示します(ピクセル単位)。
DisplayObject
 InheritedmouseY : Number
[読み取り専用] マウス位置の y 座標を示します(ピクセル単位)。
DisplayObject
 Inheritedname : String
DisplayObject のインスタンス名を示します。
DisplayObject
 InheritednumChildren : int
[読み取り専用] このオブジェクトの子の数を返します。
DisplayObjectContainer
 InheritedopaqueBackground : Object
表示オブジェクトが特定の背景色で不透明であるかどうかを指定します。
DisplayObject
 Inheritedparent : DisplayObjectContainer
[読み取り専用] この表示オブジェクトを含む DisplayObjectContainer オブジェクトを示します。
DisplayObject
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
 Inheritedroot : DisplayObject
[読み取り専用] 読み込まれた SWF ファイル内の表示オブジェクトの場合、root プロパティはその SWF ファイルが表す表示リストのツリー構造部分の一番上にある表示オブジェクトとなります。
DisplayObject
 Inheritedrotation : Number
DisplayObject インスタンスの元の位置からの回転角を度単位で示します。
DisplayObject
 InheritedrotationX : Number
DisplayObject インスタンスの 3D 親コンテナを基準にした元の位置からの x 軸の回転角を度単位で示します。
DisplayObject
 InheritedrotationY : Number
DisplayObject インスタンスの 3D 親コンテナを基準にした元の位置からの y 軸の回転角を度単位で示します。
DisplayObject
 InheritedrotationZ : Number
DisplayObject インスタンスの 3D 親コンテナを基準にした元の位置からの z 軸の回転角を度単位で示します。
DisplayObject
 Inheritedscale9Grid : Rectangle
現在有効な拡大 / 縮小グリッドです。
DisplayObject
 InheritedscaleX : Number
基準点から適用されるオブジェクトの水平スケール(パーセンテージ)を示します。
DisplayObject
 InheritedscaleY : Number
オブジェクトの基準点から適用されるオブジェクトの垂直スケール(percentage)を示します。
DisplayObject
 InheritedscaleZ : Number
オブジェクトの基準点から適用されるオブジェクトの奥行きスケール(パーセンテージ)を示します。
DisplayObject
 InheritedscrollRect : Rectangle
表示オブジェクトのスクロール矩形の境界です。
DisplayObject
 Inheritedstage : Stage
[読み取り専用] 表示オブジェクトのステージです。
DisplayObject
 InheritedtabChildren : Boolean
オブジェクトの子に対してタブが有効かどうかを調べます。
DisplayObjectContainer
 InheritedtabEnabled : Boolean
このオブジェクトがタブ順序に含まれるかどうかを指定します。
InteractiveObject
 InheritedtabIndex : int
SWF ファイル内のオブジェクトのタブ順序を指定します。
InteractiveObject
 InheritedtextSnapshot : TextSnapshot
[読み取り専用] この DisplayObjectContainer インスタンスの TextSnapshot オブジェクトを返します。
DisplayObjectContainer
 Inheritedtransform : Transform
表示オブジェクトのマトリックス、カラー変換、ピクセル境界に関係するプロパティを持つオブジェクトです。
DisplayObject
 Inheritedvisible : Boolean
表示オブジェクトが可視かどうかを示します。
DisplayObject
 Inheritedwidth : Number
表示オブジェクトの幅を示します (ピクセル単位)。
DisplayObject
 Inheritedx : Number
親 DisplayObjectContainer のローカル座標を基準にした DisplayObject インスタンスの x 座標を示します。
DisplayObject
 Inheritedy : Number
親 DisplayObjectContainer のローカル座標を基準にした DisplayObject インスタンスの y 座標を示します。
DisplayObject
 Inheritedz : Number
3D 親コンテナを基準にした、DisplayObject インスタンスの z 軸に沿った z 座標位置を示します。
DisplayObject
パブリックメソッド
 メソッド定義元
  
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
シェイプ上の線を除き、targetCoordinateSpace パラメータによって定義された座標系に基づいて、表示オブジェクトの境界を定義する矩形を返します。
DisplayObject
 Inherited
point オブジェクトをステージ (グローバル) 座標から表示オブジェクトの (ローカル) 座標に変換します。
DisplayObject
 Inherited
ステージ(グローバル)座標の 2 次元のポイントを 3 次元の表示オブジェクトの(ローカル)座標に変換します。
DisplayObject
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
表示オブジェクトの境界ボックスを評価して、obj 表示オブジェクトの境界ボックスと重複または交差するかどうかを調べます。
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
3 次元の表示オブジェクトの(ローカル)座標の 3 次元のポイントをステージ(グローバル)座標の 2 次元のポイントに変換します。
DisplayObject
 Inherited
point オブジェクトを表示オブジェクトの (ローカル) 座標からステージ (グローバル) 座標に変換します。
DisplayObject
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
DisplayObjectContainer インスタンスの子リストから指定の child DisplayObject インスタンスを削除します。
DisplayObjectContainer
 Inherited
DisplayObjectContainer の子リストの指定された index 位置から子 DisplayObject を削除します。
DisplayObjectContainer
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
 Inherited
表示オブジェクトコンテナの既存の子の位置を変更します。
DisplayObjectContainer
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定された 2 つの子オブジェクトの z 順序(重ね順)を入れ替えます。
DisplayObjectContainer
 Inherited
swapChildrenAt(index1:int, index2:int):void
子リスト内の指定されたインデックス位置に該当する 2 つの子オブジェクトの z 順序 (重ね順) を入れ替えます。
DisplayObjectContainer
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
  
load() メソッドを使用してロードされた、この Loader オブジェクトの子を削除します。
Loader
  
子 SWF ファイルの内容のアンロードを試み、ロードされた SWF ファイルのコマンドの実行を中止します。
Loader
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
イベント
 イベント 概要 定義元
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
 Inherited表示オブジェクトが表示リストに追加されたときに送出されます。DisplayObject
 Inherited表示オブジェクトが、直接、または表示オブジェクトを含むサブツリーの追加により、ステージ上の表示リストに追加されたときに送出されます。DisplayObject
 Inheritedユーザーがコンテキストメニューから「削除」を選択した場合に送信されます。InteractiveObject
 Inheritedユーザーが同じ InteractiveObject 上でポインティングデバイスのメインボタンを押して離すと送出されます。InteractiveObject
 Inheritedユーザージェスチャが AIR アプリケーションでこのインタラクティブオブジェクトに関連付けられたコンテキストメニューをトリガすると、送出されます。InteractiveObject
 Inheritedユーザーがコピー操作のためにプラットフォーム固有のアクセラレータキーの組み合わせをアクティブ化したとき、またはコンテキストメニューから「コピー」を選択した場合に送信されます。InteractiveObject
 Inheritedユーザーがカット操作のためにプラットフォーム固有のアクセラレータキーの組み合わせをアクティブ化したとき、またはコンテキストメニューから「カット」を選択した場合に送信されます。InteractiveObject
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
 Inheritedオブジェクトの doubleClickEnabled フラグが true に設定されている場合にユーザーが InteractiveObject をポインティングデバイスのメインボタンで 2 回続けてすばやくクリックすると送出されます。InteractiveObject
 Inherited[ブロードキャストイベント] 再生ヘッドが新しいフレームに入るときに送出されます。DisplayObject
 Inherited[ブロードキャストイベント] 再生ヘッドが現在のフレームを終了するときに送出されます。DisplayObject
 Inherited表示オブジェクトがフォーカスを取得した後に送出されます。InteractiveObject
 Inherited表示オブジェクトがフォーカスを失った後に送出されます。InteractiveObject
 Inherited[ブロードキャストイベント] フレーム表示オブジェクトのコンストラクタが実行した後で、かつフレームスクリプトが実行される前に送出されます。DisplayObject
 Inheritedユーザーがキーを押したときに送出されます。InteractiveObject
 Inheritedユーザーがキーボード操作によってフォーカスを変更しようとすると送出されます。InteractiveObject
 Inheritedユーザーがキーを離したときに送出されます。InteractiveObject
 Inheritedユーザーが同じ InteractiveObject 上でポインティングデバイスの中央ボタンを押して離すと送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンス上でポインティングデバイスの中央ボタンを押したときに送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンス上でポインティングデバイスのボタンを離したときに送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンス上でポインティングデバイスのボタンを押したときに送出されます。InteractiveObject
 Inheritedユーザーがポインティングデバイスでフォーカスを変更しようとすると送出されます。InteractiveObject
 InheritedInteractiveObject の上で、ユーザーがポインティングデバイスを移動させたときに送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンスからポインティングデバイスを離したときに送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンスにポインティングデバイスを合わせたときに送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンス上でポインティングデバイスのボタンを離したときに送出されます。InteractiveObject
 Inheritedマウスホイールが InteractiveObject インスタンス上を回転するときに送出されます。InteractiveObject
 Inheritedユーザーがドラッグジェスチャを止めると、ドラッグイニシエータ InteractiveObject から送出されます。InteractiveObject
 Inheritedドラッグされたオブジェクトがターゲットにドロップされ、そのドロップ操作が DragManager.acceptDragDrop() の呼び出しで受け入れられた場合に、ターゲットの InteractiveObject から送出されます。InteractiveObject
 Inheritedドラッグジェスチャが境界に入ると、InteractiveObject から送出されます。InteractiveObject
 Inheritedドラッグジェスチャが境界を出ると、InteractiveObject から送出されます。InteractiveObject
 Inheritedドラッグジェスチャが境界の範囲内で行われている間、InteractiveObject から継続的に送出されます。InteractiveObject
 Inheritedドラッグ操作の開始時に、DragManager.doDrag() 呼び出しのドラッグイニシエータとして指定されている InteractiveObject から送出されます。InteractiveObject
 Inheritedドラッグ操作が行われている間に、DragManager.doDrag() 呼び出しのドラッグイニシエータとして指定されている InteractiveObject から送出されます。InteractiveObject
 Inheritedユーザーがペースト操作のためにプラットフォーム固有のアクセラレータキーの組み合わせをアクティブ化したとき、またはコンテキストメニューから「ペースト」を選択した場合に送信されます。InteractiveObject
 Inherited表示オブジェクトが表示リストから削除されようとしているときに送出されます。DisplayObject
 Inherited表示オブジェクトが、直接、または表示オブジェクトを含むサブツリーの削除により、表示リストから削除されようとしているときに送出されます。DisplayObject
 Inherited[ブロードキャストイベント] 表示リストが更新およびレンダリングされようとしているときに送出されます。DisplayObject
 Inheritedユーザーが同じ InteractiveObject 上でポインティングデバイスの右ボタンを押して離すと送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンス上でポインティングデバイスのボタンを押したときに送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンス上でポインティングデバイスのボタンを離したときに送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンスからポインティングデバイスを離したときに送出されます。InteractiveObject
 Inheritedユーザーが InteractiveObject インスタンスにポインティングデバイスを合わせたときに送出されます。InteractiveObject
 Inheritedユーザーがすべて選択操作のためにプラットフォーム固有のアクセラレータキーの組み合わせをアクティブ化したとき、またはコンテキストメニューから「すべて選択」を選択した場合に送信されます。InteractiveObject
 Inheritedオブジェクトの tabChildren フラグの値が変更されたときに送出されます。InteractiveObject
 Inheritedオブジェクトの tabEnabled フラグが変更されたときに送出されます。InteractiveObject
 Inheritedオブジェクトの tabIndex プロパティの値が変更されたときに送出されます。InteractiveObject
プロパティの詳細
contentプロパティ
content:DisplayObject  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

load() メソッドまたは loadBytes() メソッドを使用してロードされた SWF ファイルまたはイメージ (JPG、PNG、または GIF) ファイルのルート表示オブジェクトが含まれます。



実装
    public function get content():DisplayObject

例外
SecurityError — ロードされた SWF ファイルまたはイメージファイルは、アクセス権限が与えられていないセキュリティ Sandbox に属しています。ロードされた SWF ファイルの場合、ファイルで Security.allowDomain() メソッドを呼び出すことによって、この状況を回避できます。または、loaderContext パラメータ (securityDomain プロパティのパラメータ) を SecurityDomain.currentDomain に設定することによって (ただし、ロードする側のファイルで load() または loadBytes() メソッドを呼び出すとき)、この状況を回避できます。

関連項目

contentLoaderInfoプロパティ 
contentLoaderInfo:LoaderInfo  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ロードされているオブジェクトに対応する LoaderInfo オブジェクトを返します。LoaderInfo オブジェクトは、Loader オブジェクトとロードされたコンテンツオブジェクト間で共有されます。LoaderInfo オブジェクトは、ロードの進行状況に関する情報と、ロードされたファイルに関する統計を提供します。

ロードに関連するイベントは、Loader オブジェクトの contentLoaderInfo プロパティで参照される LoaderInfo オブジェクトによって送出されます。contentLoaderInfo プロパティは、コンテンツのロードの前も、有効な valid LoaderInfo オブジェクトに設定されているので、ロードの前にイベントリスナーをオブジェクトに追加できます。



実装
    public function get contentLoaderInfo():LoaderInfo

関連項目

コンストラクタの詳細
Loader()コンストラクタ
public function Loader()

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

SWF、JPEG、GIF、または PNG などのファイルのロードに使用できる Loader オブジェクトを作成します。アセットを Loader インスタンスの子としてロードするには、load() メソッドを呼び出します。その後、Loader オブジェクトを表示リストに追加できます。例えば、DisplayObjectContainer インスタンスの addChild() メソッドを使用して追加します。アセットはロードされるとステージに表示されます。

Loader インスタンスを "リスト外" で、つまり、表示リスト上の表示オブジェクトコンテナに追加しなくても使用できます。このモードの場合、Loader インスタンスを使用して、アプリケーションの追加モジュールを含む SWF ファイルをロードすることができます。

SWF ファイルのロードが完了したことを検出するには、Loader オブジェクトの contentLoaderInfo プロパティに関連付けられた LoaderInfo オブジェクトのイベントを使用できます。その時点で、モジュール SWF ファイル内のコードを実行し、モジュールを初期化して、開始できます。リスト外モードでは、Loader インスタンスを使用して、コンポーネントまたはメディアアセットを含む SWF ファイルをロードすることもできます。この場合も、LoaderInfo オブジェクトのイベント通知を使用して、コンポーネントのロードが完了したことを検出できます。 その時点で、アプリケーションは SWF ファイルのライブラリ内のコンポーネントとメディアアセットの使用を開始できます。これは、それらのコンポーネントとアセットを表す ActionScript 3.0 クラスをインスタンス化することによって行います。

Loader オブジェクトの状態を判別するには、Loader オブジェクトの contentLoaderInfo プロパティに関連付けられた LoaderInfo オブジェクトの次のイベントを監視します。

関連項目

メソッドの詳細
close()メソッド
public function close():void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

Loader インスタンスに対して現在進行中の load() メソッドの処理をキャンセルします。

関連項目

load()メソッド 
public function load(request:URLRequest, context:LoaderContext = null):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

SWF、JPEG、プログレッシブ JPEG、非アニメーション GIF、または PNG ファイルを、この Loader オブジェクトの子であるオブジェクトにロードします。アニメーション GIF ファイルを読み込むと、先頭のフレームのみ表示されます。Loader オブジェクトには子を 1 つだけしか含めることができないため、後続の load() 要求を発行すると直前の要求(保留中であれば)を終了し、新たに読み込みを開始します。

注意:AIR 1.5 および Flash Player 10 では、読み込まれるイメージの最大サイズは幅または高さで 8,191 ピクセルです。総ピクセル数が 16,777,215 ピクセルを超えることはできません(したがって、読み込まれるイメージの幅が 8,191 ピクセルであった場合、高さは 2,048 ピクセルまでしか指定できません)。Flash Player 9 以前および AIR 1.1 以前では、高さ 2,880 ピクセル、幅 2,880 ピクセルに制限されていました。

Loader オブジェクトに読み込んだ SWF ファイルまたはイメージは、その Loader オブジェクトの親の表示オブジェクトの位置、回転、および拡大 / 縮小の各プロパティを継承します。

このメソッドを使用して読み込まれたムービーまたはイメージを削除したり、進行中の読み込み処理をキャンセルするには、unload() メソッドを使用します。

SWF ファイルがこのメソッドを使用しないようにするには、SWF コンテンツを含んでいる HTML ページの allowNetworking パラメータ(object タグおよび embed タグ内)を設定します。

このメソッドを使用するときは、Loader クラスの説明にある Flash Player セキュリティモデルを考慮してください。

Flash Player 10 以降では、"multipart/form-data" などのマルチパート Content-Type にアップロードが含まれていると(アップロードが含まれているかどうかは POST ボディ内の "content-disposition" ヘッダーの "filename" パラメータで示されます)、そのアップロードに適用されるセキュリティ規則によって POST 処理が拘束されます。

また、すべてのマルチパート Content-Type では、RFC2046 標準に準拠した有効なシンタックスを使用する必要があります。シンタックスが有効でない場合は、アップロードに適用されるセキュリティ規則によって POST 処理が拘束されます。

セキュリティ情報について詳しくは、以下を参照してください。

パラメータ

request:URLRequest — ロードする SWF、JPEG、GIF、または PNG ファイルの絶対 URL または相対 URL です。相対パスの場合は、メイン SWF ファイルを基準にする必要があります。絶対 URL の場合は、http:// や file:/// などのプロトコル参照も含める必要があります。ファイル名には、ドライブ指定を含めることはできません。
 
context:LoaderContext (default = null) — 次の定義を行うプロパティのある、LoaderContext オブジェクトです。
  • オブジェクトのロード時にポリシーファイルの存在を確認するかどうか
  • ロードされるオブジェクトの ApplicationDomain
  • 読み込まれるオブジェクトの SecurityDomain

context パラメータが指定されていない場合または null のオブジェクトを参照している場合、読み込まれるコンテンツはそれ自身のセキュリティドメインに置かれたままになります。

完全な詳細については、LoaderContext クラスのプロパティの説明を参照してください。


イベント
complete:Event — ファイルの読み込みが完了したときに、contentLoaderInfo オブジェクトによって送出されます。complete イベントは、常に init イベントの後に送出されます。
 
httpStatus:HTTPStatusEvent — ネットワーク要求が HTTP 上で行われ、Flash Player が HTTP 状況コードを検出できる場合に、contentLoaderInfo オブジェクトによって送出されます。
 
init:Event — 読み込まれた SWF ファイルのプロパティおよびメソッドにアクセスできる場合に、contentLoaderInfo オブジェクトによって送出されます。init イベントは、常に complete イベントの前に送出されます。
 
ioError:IOErrorEvent — 入出力エラーが発生して読み込み処理が失敗したときに、contentLoaderInfo オブジェクトによって送出されます。
 
open:Event — 読み込み処理が開始したときに、contentLoaderInfo オブジェクトによって送出されます。
 
progress:ProgressEvent — 読み込み処理を実行中にデータを受信したときに、contentLoaderInfo オブジェクトによって送出されます。
 
securityError:SecurityErrorEvent — ローカルファイルシステムのサンドボックス内の SWF ファイルがネットワーク接続したローカルのサンドボックス内のコンテンツを読み込もうとしたか、またはその逆の場合に、contentLoaderInfo オブジェクトによって送出されます。
 
unload:Event — 読み込まれたオブジェクトが削除されるときに、contentLoaderInfo オブジェクトによって送出されます。

例外
IOError request オブジェクトの digest プロパティが null ではありません。RLRequest オブジェクトの digest プロパティを設定できるのは、URLLoader.load() メソッドを呼び出して SWZ ファイル(Adobe プラットフォームコンポーネント)を読み込む場合のみです。
 
SecurityError LoaderContext.securityDomain の値は、null または SecurityDomain.currentDomain のいずれかである必要があります。つまり、ロードされたメディアは、通常のセキュリティサンドボックスまたは独自のサンドボックスのいずれかにしか配置できません。後者の場合は、ポリシーファイルが必要です。
 
SecurityError — ローカル SWF ファイルでは、LoaderContext.securityDomain に null 以外の値を設定できません。また、ローカルでないメディアのローカルサンドボックスへのインポート、およびローカルメディアの通常のサンドボックス以外の場所への配置は許可されません。
 
SecurityError — 一般的な予約ポートに接続しようとしている場合。ブロックされているポートの完全な一覧については、『ActionScript 3.0 のプログラミング』のセキュリティに関する章の「ネットワーク API の制限」を参照してください。
 
SecurityError applicationDomain または securityDomain プロパティ(context パラメータのプロパティ)が、許可されていないドメインのものであった場合
 
SecurityError — ローカル SWF ファイルが、securityDomain プロパティ (context パラメータのプロパティ) を使用しようとした場合

関連項目

loadBytes()メソッド 
public function loadBytes(bytes:ByteArray, context:LoaderContext = null):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ByteArray オブジェクトに保管されているバイナリデータからロードします。

このメソッドを使用するときは、Loader クラスの説明にある Flash Player セキュリティモデルを考慮してください。

パラメータ

bytes:ByteArray — ByteArray オブジェクトです。ByteArray の内容としては、Loader クラスがサポートする SWF、GIF、JPEG、PNG のうちの任意のファイル形式を使用できます。
 
context:LoaderContext (default = null) — LoaderContext オブジェクトです。LoaderContext オブジェクトの applicationDomain プロパティのみが適用され、LoaderContext オブジェクトの checkPolicyFile および securityDomain プロパティは適用されません。

context パラメータが指定されていない場合または null のオブジェクトを参照している場合、コンテンツは現在のセキュリティドメインにロードされます。Flash Player のセキュリティに関する説明では、このプロセスを「読み込みロード」と呼びます。具体的には、ロードする側の SWF ファイルが、コードにリモート SWF を組み込むことによってリモート SWF を明示的に信頼している場合は、それ自身のセキュリティドメインに直接リモート SWF を読み込むことができます。


例外
ArgumentError — ByteArray オブジェクトの length プロパティが 0 以下であった場合
 
IllegalOperationError checkPolicyFile または securityDomain プロパティ (context パラメータのプロパティ) が null 以外であった場合
 
SecurityError applicationDomain プロパティ(受け取った context プロパティのプロパティ)が、許可されていないドメインのものであった場合
 
SecurityError — 一般的な予約ポートに接続しようとしている場合。ブロックされているポートの完全な一覧については、『ActionScript 3.0 のプログラミング』のセキュリティに関する章の「ネットワーク API の制限」を参照してください。

関連項目

unload()メソッド 
public function unload():void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

load() メソッドを使用してロードされた、この Loader オブジェクトの子を削除します。関連した LoaderInfo オブジェクトの propertynull にリセットされます。他のオブジェクトが参照している可能性があるので、子は必ずしも破棄されるとは限りません。ただし、Loader オブジェクトの子ではなくなります。

子 SWF ファイルをアンロードする前に、LocalConnection、NetConnection、NetStream、Sound オブジェクトなど、子 SWF ファイルのオブジェクト内のストリームをすべて明示的に閉じておくことをお勧めします。そうしなかった場合は、子 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);

関連項目

unloadAndStop()メソッド 
public function unloadAndStop(gc:Boolean = true):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

子 SWF ファイルのアンロードを試み、ロードされた SWF ファイルのコマンドの実行を中止します。このメソッドは、Loader.load() または Loader.loadBytes() を使用してロードされた SWF ファイルのアンロードを試みます。このために、子 SWF ファイルの EventDispatcher、NetConnection、Timer、Sound、または Video オブジェクトへの参照を削除します。この結果、子 SWF ファイルおよび子 SWF ファイルの表示リストで以下が行われます。

パラメータ

gc:Boolean (default = true) — 子 SWF オブジェクトでガベージコレクターが実行されるようにヒントを提供するかどうかを指定します(true または false)。多数のオブジェクトを非同期でアンロードする場合は、gc パラメータを false に設定するとアプリケーションのパフォーマンスが向上する可能性があります。ただし、このパラメータを false に設定した場合は、unloadAndStop() コマンドの実行後も子 SWF ファイルのメディアオブジェクトおよび表示オブジェクトがメモリに残ることがあります。

関連項目

例の使用法
LoaderExample.as

次の例では、LoaderExample クラスを使用して、さまざまなイベントリスナーの使用方法を示します。これを行うには、以下の手順を実行します。
  1. url プロパティを作成します。これはイメージファイルの場所と名前です。
  2. LoaderExample コンストラクタでは、loader という名前の新しい Loader オブジェクトが作成され、手順 3 出説明する configureListeners() メソッドに渡されます。
  3. コンストラクタは、request という URLRequest オブジェクトの新しいインスタンスを作成しますが、その前に、ファイル名と場所が分かるように url を渡します。
  4. request オブジェクトが loader オブジェクトの load() メソッドに渡されます。これにより、イメージが表示リストにロードされます。
  5. clickHandler イベントリスナーがローダーの click イベントに対して登録されます。マウスをクリックすると、ロードされたイメージはアンロードされます。
  6. configureListeners() メソッドは、次のメソッドを使用して、7 つのイベントリスナーを追加します。
    • 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/flex/3_jp/langref/flash/display/Loader.html