イナヅマTVログ

Progression4事始め、LoaderListで複数ファイルをロードしちゃいましょ

| 0件のコメント

Progression4を使えば複数ファイルのロードも簡単に行えて便利さがひしひしと身にしみます。
外部ファイルをロードするライブラリは色々あったけど、これからはProgression4だけで良さそうです。

import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.DisplayObject;
import flash.net.URLRequest;
 
import jp.progression.commands.lists.LoaderList;
import jp.progression.commands.net.LoadBitmapData;
 
new LoaderList(
	{
		onComplete : function ():void {
			trace("complete", this.latestData, this.data);
			var i:uint = 0;
			for each (var bd:BitmapData in this.data) {
				var display:DisplayObject = addChild(new Bitmap(bd));
				display.x = i * 100;
				display.y = i * 10;
				i++;
			}
		},
		onProgress : function ():void  {
			trace( this.percent, "%", this.loaded, "/", this.total, this.bytesLoaded, this.bytesTotal );
		},
		onStart : function ():void {
			trace("start");
		}
	},
	new LoadBitmapData(new URLRequest("images/x.png")),
	new LoadBitmapData(new URLRequest("images/a.jpg")),
	new LoadBitmapData(new URLRequest("images/b.jpg")),
	new LoadBitmapData(new URLRequest("images/c.jpg"))
).execute();

画像ファイルを読み込んで配置してるだけだけど、こんなに簡単に実装できるのは驚きです。
面倒くさいaddEventListenerをProgressionが全部変わりに行ってくれます。
実運用するときは、onErrorcatchErrorも使っておいた方が良さそうです。

LoaderListプロパティのtotalは総読込みインスタンス数、loadedは読込み完了数。percent, bytesLoaded, bytesTotalを使えば途中経過表示も自由自在だろうと思います。
読込まれたデータはlatestData, dataに配列として格納されているのを取出して使うってことかな。

コメントを残す

必須欄は * がついています