当我单击按钮时,第一个声音开始,然后我再次单击按钮第一个声音停止,第二个声音开始。我能怎么做?
public void onClick(View v) {
final MediaPlayer mp = MediaPlayer.create(getBaseContext(), R.raw.random);
final MediaPlayer mp2 = MediaPlayer.create(getBaseContext(), R.raw.stop);
if(!mStarted) {
// Start
mp2.stop();
mp.start();
Toast.makeText(finish.this, "Started!", Toast.LENGTH_SHORT).show();
mStarted = true;
mInterval = MIN_INTERVAL;
mHandler.removeMessages(MESSAGE_RANDOM);
mHandler.sendEmptyMessage(MESSAGE_RANDOM);
} else {
// Stop
generate.setEnabled(false);
mp.stop();
mp2.start();
mStarted = false;
Toast.makeText(finish.this, "Stoping...", Toast.LENGTH_SHORT).show();
}
}
};
最佳答案
只需在 mp.start()
之前添加 mp2.stop()
并在 mp2.start 之前添加
。不要忘记检查 MediaPlayers 是否已初始化并通过调用 mp.stop()
()
if (mp != null && mp.isPlaying())
对于每个 MediaPlayer 实例。
希望这有帮助。
关于java - 我怎样才能停止声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6490176/