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が全部変わりに行ってくれます。
実運用するときは、onError
やcatchError
も使っておいた方が良さそうです。
LoaderList
プロパティのtotal
は総読込みインスタンス数、loaded
は読込み完了数。percent, bytesLoaded, bytesTotal
を使えば途中経過表示も自由自在だろうと思います。
読込まれたデータはlatestData, data
に配列として格納されているのを取出して使うってことかな。