Web サイトで使用している .swf がありますが、読み込みに数秒かかります。ローディング中は目が痛いので、ローディングバーを追加したいです。.fla ファイルでこれを行う最も簡単な方法は何だろうと思っていました。
2 に答える
this.stop();
this.loaderInfo.addEventListener(Event.COMPLETE, action);
this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressAction);
function onProgressAction (e:ProgressEvent):void
{
var total:Number = e.bytesTotal;
var loaded:Number = e.bytesLoaded;
if(total == loaded) {
gotoAndStop(2);
}
}
function action (e:Event):void
{
this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, onProgressAction);
}
1) メイン タイムラインに 3 つのレイヤーを作成します。
2) レイヤー 1 (上) で、フレーム 1 と 2 と 3 に 2 つの空のキーフレームを作成します。
3) レイヤー 1、フレーム 1 で、次のコードを入力します。
bytes_loaded = Math.round(this.getBytesLoaded());
bytes_total = Math.round(this.getBytesTotal());
//
this.loadBar._width = getPercent*200;
if (bytes_loaded == bytes_total) {
this.gotoAndPlay(3);
}
;
4) レイヤー 1、フレーム 2 で、次のコードを入力します。
this.gotoAndPlay(1);
5) レイヤー 2 (中) で、フレーム 1 とフレーム 3 に空白のキーフレームを作成します。
6) レイヤー 2、フレーム 1 に境界線のない長方形 (100x10 としましょう) を描画します。ここでは、赤にします。
7) そのシェイプをムービー クリップに変換し、インスタンスに「loadBar」という名前を付けます。
8) レイヤー 3 (下) で、フレーム 1 とフレーム 3 に空白のキーフレームを作成します。
9) レイヤー 3、フレーム 1 に境界線のない長方形 (100x10 としましょう) を描画します。ここでは、黒にします。これが読み込みバーの背景になります。レイヤー 2 の長方形のムービー クリップのすぐ後ろに配置します。
10) 「loadBar」というレイヤー 2 フレーム 1 のムービー クリップをダブルクリックします。
11) 2層作る。
12) レイヤー 1 (上) に、境界線のない長方形 (100x10 としましょう) を描きます。好きな色にします。
13) レイヤー 2 (下) に、境界線のない長方形 (100x10 としましょう) を描画します。グレーにします。これは、バーがいっぱいになるとバーの色になります。レイヤー 1 の長方形の形状のすぐ後ろに配置します。
14) タイムライン エリアのレイヤー 1 を右クリックし、[マスク] を選択します。
15) これで準備完了です。ファイルがロードされると、フレーム 3 にジャンプして再生が開始されます。必要に応じてローディング バーのグラフィックの色やサイズ、位置を変更してください。