0

私は小さなプロジェクトに取り組んでおり、ユーザーがボタンを押したときにサウンドを再生する必要があります。その部分は私が落ち込んでいるようです。しかし問題は、ユーザーがボタンをスパムすると、サウンドが何度も再生され、重複することです。サウンドの再生中にボタンをロックアウトするにはどうすればよいですか? または、ボタンを押した瞬間ではなく、各クリックをキューに入れて次々に再生するにはどうすればよいですか? これは私がこれまでに持っているものです。私はアンドロイド開発に少し慣れていません。ありがとう。

public void SOS(View v) {
    MediaPlayer mp = MediaPlayer.create(this, R.raw.sos);
    mp.start();
    mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {

    @Override
    public void onCompletion(MediaPlayer mp) {
        mp.stop();
    }
    });
}
4

3 に答える 3

0

次のように、毎回作成する代わりにメディアプレーヤーへの参照を保持し、まだ再生されていない場合にのみ再生します。

if(!mp.isPlaying())
{
     mp.start();
}
于 2013-09-15T16:45:33.497 に答える
0

jボタンですか?もしそうなら、ただ使用してください。JButton の名前に置き換えます。

//Disables it.
<JbuttonName>.setEnabled(false);

//Enables it
<JbuttonName>.setEnabled(true);
于 2013-09-15T16:31:51.767 に答える