0

すでに自動再生付きの停止ボタンを追加しましたが、停止後にもう一度ボタンをクリックすると音楽が再生されるようにする必要があります。

ソースコード:

var music:Sound = new Sound(new URLRequest("calmingsong.mp3"));
var sc:SoundChannel = music.play();

button1.addEventListener(MouseEvent.CLICK, stopMusic);

function stopMusic(e:Event):void
{
sc.stop();
}
4

1 に答える 1

0

サウンドを最初からやり直したい場合は、Soundオブジェクトのplay()メソッドを再度呼び出すだけです (SoundChannelこれを行うと、新しいオブジェクトが取得されます)。

ユーザーが停止した時点でサウンドの再生を再開したい場合は、現在の「再生状態」を保存する変数を追加する必要があります...次のようなものです。

var music:Sound = new Sound(new URLRequest("calmingsong.mp3"));
var sc:SoundChannel = music.play();
var startPosition:Number = 0;
var isPlaying = true; // default to true cause you auto play...

button1.addEventListener(MouseEvent.CLICK, togglePlayback);

function togglePlayback(e:Event):void
{
    if (isPlaying)
    {
        startPosition = sc.position;
        sc.stop();
        isPlaying = false;
    }
    else
    {
        sc = music.play(startPosition);
        isPlaying = true;
    }
}
于 2012-12-30T18:46:16.063 に答える