- 2009-04-02 (木)
- Action Script 2.0
個人的に画像のローディング処理って意外と面倒だったりする。
いや、何度もやっているんでノウハウはあるんだけども、特に複数画像とかいまいちパッとしない処理をしていたりして、毎回試行錯誤しながらスクリプトを組んでいたりする。ただ単にレベルが低い話だね(汗
んで、ちょっと見つけた便利な AS2 用クラス。
feb19.jp blog - AS2で読み込んだ外部画像にスムージングを適用する
これは便利。
クラスは AS3 で勉強して作ることができるようになったんだけども、何となくいまさら AS2 で覚える気が起きない。といっても、現状最も利用頻度が多いのが AS2 なんで「覚えろよ!」って話なんだけども、こうやって誰かが作成したクラスを利用するのもいいじゃないか。
で、こちらは、スムージングを適用しつつ外部画像を読み込めるクラスなんだけども、これをちょこっと応用して複数画像を一括で読み込むスクリプトを組んでみたんで、今後のためにメモ。
import LoadBitmap;
//変数
imgPathArr = ["img01.jpg", "img02.jpg", "img03.jpg", "img04.jpg"];
imgLoadedCount = 0; //読み込んだ画像の数
//画像読み込み
loadImages();
function loadImages() {
//読み込み完了処理
var endListener:Object = new Object();
endListener.onComplete = function() {
imgLoadedCount++;
if (imgLoadedCount == imgPathArr.length) {
//全画像読み込み完了
trace("全画像読み込み完了!");
delete endListener.onComplete;
}
}
//複数画像読み込み
for (i = 0; i < imgPathArr.length; i++) {
var MC:MovieClip = this.createEmptyMovieClip("img" + i, this.getNextHighestDepth());
MC._x = 50 * i;
var LMB = new LoadBitmap(MC, imgPathArr[i], true);
LMB.addListener(endListener);
}
}
なんてことはない、「endListener.onComplete」が処理される度に「imgLoadedCount」で画像数をカウントアップさせていくだけ。でも、スクリプトがすっきりしていい感じだ。
ただ、ローディングのパーセンテージを表示はできないけど(汗
画像なんで、よほど大量の枚数を読み込まない限りはただのローディングアニメーションで十分だよね。もし大量に画像を一括で読み込みたい時は…まぁ…その時に考えればいいさー。
この記事をブックマークしておく
- 次の記事: JavaScript の便利メモ
- 前の記事: 携帯サイトをリニューアル
コメント:0
トラックバック:0
- この記事のトラックバックURL
- http://god.xsrv.jp/__mt/mt-tb.cgi/1405
- トラックバックを受ける記事
- AS2 で外部画像をスムージングを適用しつつ複数ファイルを一括で読み込む from 1ka2ka.com Flash & Action Script