0

私はこの問題を調査しようとしましたが、フラッシュの初心者であるため、用語を理解するのに苦労しています...

BudeStrings Dev Siteのランディング ページで piecemaker 2 スライダーを使用しています。スライダーには合計 5 つのスライドが含まれています。最初の 1 つは複数のフレームを含むムービー クリップで、次の 4 つはそれぞれ 1 つのフレームのみで構成されるアニメーション テキスト クリップです。

インターウェブで見つけた指示に従って、最初の(マルチフレーム)クリップの最後のフレームの後にキーフレームを追加し、次のコードを追加しました。

dispatchEvent(new Event(Event.COMPLETE));
stop();

クリップのループを停止し、スライダーの自動再生動作を有効にします。これは最初の (マルチフレーム) ムービー クリップではまったく問題なく動作しますが、同じコードを他の 4 つの (単一フレーム) クリップに追加しようとすると、目的の効果が得られません。

これら 4 つのクリップは、次のコードを使用します。

var myString:String = "Sample text "
var myArray:Array = myString.split("");
addEventListener(Event.ENTER_FRAME, frameLooper);
function frameLooper(event:Event):void {    
if (myArray.length > 0){
TextField.appendText(myArray.shift())­; 
}   
else {  
removeEventListener(Event.ENTER_FRAME, frameLooper);    
}
}

アニメーションのタイピング効果でテキストを表示します。最初のクリップで行ったように、dispatchEvent コードを使用してキーフレームを追加すると、動作が停止し、dispatchEvent コードを上記の actionscript に追加しても効果がなく、ピースメーカー 2 はスライド番号 2 に到達すると自動再生を停止します。

それを超えて、何が問題を引き起こしているのかわかりません。助けてください。

よろしく、ヤン

4

1 に答える 1

0

まず、クラス自体ではなく、テキストフィールドのインスタンスで appendText メソッドを使用する必要があります (コンパイラはエラーを返すはずです)。したがって、ステージのテキストフィールドが「txt」と呼ばれる場合、「txt.appendText..」になります。次に、else セクション内でディスパッチするイベントを定義する必要があります。これは、実行時にアニメーションが完了するためです。

[編集] パブリッシュ設定で厳密モードを有効にしてください ここに画像の説明を入力

于 2012-08-19T20:09:22.877 に答える