ページへ戻る

− Links

 印刷 

Starling+FeathersのImageLoaderを使う :: NJF Wiki

xpwiki:Starling+FeathersのImageLoaderを使う

テクスチャアトラスに入れられないような大きな画像や、一時的に使う画像を表示するだけなら、必要な時だけ画像を読み込んで使い終わったら破棄した方がメモリの節約になる。

自分でロードしてビットマップからテクスチャを作成して表示しても良いが、Feathersには簡単に画像をロードしてくれるImageLoader編集[1]がある。

使い方は、

var loader:ImageLoader = new ImageLoader();
loader.source = "yourImage.png";
addChild(loader);

これで表示される。sourceはurlではなくテクスチャでもかまわない。「addChild」すると、ロードが開始される。実際にはロード後に画面や場所の調整が必要なので、ロード完了時のイベントが用意されている。

loader.addEventListener(Event.COMPLETE, onComplete);

これでonComplete関数で座標などの調整を行えば良い。

function onComplete(e:Event):void 
{
	loader.validate();
	loader.alignPivot();
	loader.x = STAGE_X * 0.5;
	loader.y = STAGE_Y * 0.5;
}

ロード後、テクスチャなどの初期化は非同期で行われるようで、ここでvalidate関数を実行しておかないとloaderのwidthやheightはまだ更新されておらず、0のままになっており、alignPivotも正常に働かないことに注意が必要である。

エラーはFeathersEventType編集[2].ERRORで取得できる。

使い終わったら破棄する

loader.removeFromParent(true);

その他詳細はこちら。

http://feathersui.com/help/image-loader.html[3]


Last-modified: 2015-06-09 (火) 08:20:49 (JST) (3243d) by njf