2009-06-10(Wed) 13:16
[AS3.0]複数の外部画像をまとめてローディング表示
複数の外部画像を読み込んだときまとめてローディング表示させたいときは「bulk-loader 」というライブラリ使うと便利らしいのでメモ。
-
まずはflaファイルと同階層にライブラリを入れてインポート
import br.com.stimuli.loading.BulkLoader; import br.com.stimuli.loading.BulkProgressEvent;
-
読み込むファイルを指定します。
今回は画像ファイルを読み込みました。loader = new BulkLoader("main"); //読み込む画像パスの指定 loader.add("img/img01.gif"); loader.add("img/img02.gif"); loader.add("img/img03.gif"); -
プログレスイベントとロード完了後のイベントの追加
loader.addEventListener(BulkLoader.PROGRESS, onProgress); loader.addEventListener(BulkLoader.COMPLETE, onComplete); loader.start();// ロード開始
-
percentLoadedで現在のローディングの経過を取得します。
private function onProgress(e:BulkProgressEvent) : void { trace(e.percentLoaded); } -
ローディング完了後の処理。
今回はgetBitmapで取得しました。private function onComplete(e:Event) : void { var _bitmap1:Bitmap = loader.getBitmap("img/img01.gif"); var _bitmap2:Bitmap = loader.getBitmap("img/img02.gif"); var _bitmap3:Bitmap = loader.getBitmap("img/img03.gif"); } -
最終的にとりあえずこんな感じです。
package { import flash.display.Bitmap; import flash.display.Sprite; import flash.events.Event; import br.com.stimuli.loading.BulkLoader; import br.com.stimuli.loading.BulkProgressEvent; public class Main extends Sprite { //BulkLoaderの宣言 private var loader:BulkLoader ; public function Main ():void { loader = new BulkLoader("main"); //読み込む画像パスの指定 loader.add("img/img01.gif"); loader.add("img/img02.gif"); loader.add("img/img03.gif"); // ロード経過イベント loader.addEventListener(BulkLoader.PROGRESS, onProgress); // ロード完了イベント loader.addEventListener(BulkLoader.COMPLETE, onComplete); loader.start();// ロード開始 } // ロード経過 private function onProgress(e:BulkProgressEvent) : void { trace(e.percentLoaded); } // ロード完了 private function onComplete(e:Event) : void { var _bitmap1:Bitmap = loader.getBitmap("img/img01.gif"); var _bitmap2:Bitmap = loader.getBitmap("img/img02.gif"); var _bitmap3:Bitmap = loader.getBitmap("img/img03.gif"); //画像の大きさ分ずらして配置 _bitmap2.x = 60; _bitmap3.x = 120; addChild(_bitmap1); addChild(_bitmap2); addChild(_bitmap3); } } }





TrackBack URL