0

Adnroid では、最初に次のように mediaplayer を宣言します。

MediaPlayer mpl;

次に、これを onCreate メソッドに入れます

mp = new MediaPlayer();
mp = MediaPlayer.create(this, R.raw.hit );
mp.setVolume(1, 1);

呼び出されたときにサウンドを再生するはずの関数

public void click()
{
    mp.start();
}

問題は、ユーザーがこの関数を複数回呼び出した場合、最後のサウンドの再生を停止する前に、アプリがリセットされる前に終了し、サウンドの再生を停止することです。

それを修正する方法はありますか?

ありがとう!

編集 - 解決策を見つけました:

mp.setOnCompletionListener(new OnCompletionListener() {
    public void onCompletion(MediaPlayer mp) {
    mpl.release();
    }
});
4

2 に答える 2

4
public void click()
{
    if( ! mp.isPlaying() ) {
        mp.start();
    }//if
}//met
于 2012-04-07T08:33:33.813 に答える
1

ボタンを無効にすることができます。

または、現在の再生を停止してスターを付けることができます

onClick() の新機能

于 2012-04-07T08:34:56.317 に答える