2
Button b = (Button) findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener() {
    MediaPlayer mp = MediaPlayer.create(main.this, R.raw.lastmohican);
    public void onClick(View arg0) {
        // TODO Auto-generated method stub
        if (mp.isPlaying()) {
            mp.stop();
        } else {
            mp.start();
        }
    }
}

この音楽はワンクリックで再生でき、別のクリックで音楽が停止しますが、一緒にクリックしても音楽が開始されません。なぜですか?

4

2 に答える 2

3

問題が理解できるかどうかはわかりませんが、ボタンを3回押しても音声が再開しないのはなぜか疑問に思われる場合は、電話をstop()かける必要があるときにメディアプレーヤーを呼び出しているためですpause()。停止するには、再生を開始する前にメディアを再度準備する必要があります。MediaPlayerのドキュメントをご覧ください。それがあなたの問題ではない場合は、より良い説明を提供する必要があります。

于 2012-07-13T22:45:45.310 に答える
2

このタイプのコードを変更する必要があります

if (mp.isPlaying()) {
    mp.stop();
    mp.prepareAsync();
    mp.seekTo(0);
} else {
    mp.start();
}
于 2012-07-25T20:25:59.153 に答える