1

gotoAndStop() メソッドはロード中のサウンドで呼び出され、サウンドが終了するとトレースが開始されます。どんな助けでも大歓迎です!

ここに私のコードがあります:

 import flash.events.Event;
import flash.media.Sound;
import flash.net.URLRequest;
var sound:Sound = new Sound();
var soundReq:URLRequest = new 
URLRequest("testmp3.mp3");
sound.load(soundReq);
sound.addEventListener(Event.COMPLETE, soundPlay);
function soundPlay(event:Event):void
{   
    var soundChannel:SoundChannel;
    soundChannel = sound.play();
    soundChannel.addEventListener(Event.SOUND_COMPLETE, soundComplete);
}
function soundComplete(event:Event):void
{
    trace("The sound has finished playing.");

    gotoAndStop(3);
}
4

1 に答える 1

4

あなたが間違っていると思います。

Event.COMPLETEサウンド ファイルのロードが完了したときに呼び出されます。

sound.addEventListener(Event.COMPLETE, soundPlay);

Event.SOUND_COMPLETEサウンドの再生が終了したときに呼び出されます。

soundChannel.addEventListener(Event.SOUND_COMPLETE, soundComplete);

次のコードを参照してください。


import flash.events.Event;
import flash.media.Sound;
import flash.net.URLRequest;
var sound:Sound = new Sound();
var soundReq:URLRequest = new URLRequest("testmp3.mp3");
sound.load(soundReq);
sound.addEventListener(Event.COMPLETE, soundFileLoaded);
function soundFileLoaded(event:Event):void
{   
    trace("sound file loaded!");

    gotoAndStop(3);
    var soundChannel:SoundChannel;
    soundChannel = sound.play();
    soundChannel.addEventListener(Event.SOUND_COMPLETE, soundPlaybackEnded);
}
function soundPlaybackEnded(event:Event):void
{
    trace("sound playback ended");
}
于 2012-08-22T10:52:53.347 に答える