我遇到以下問題:Spinner中重疊兩個聲音
我有一個有不同歌曲的微調。在微調器中,用戶可以預覽所選的聲音。我已經開發了那部分。但我的問題是:當我從列表中選擇一首歌曲時,它將播放。然後,當我們從列表中選擇另一首歌曲時,Mediaplayer不會停止並播放上一首歌曲。但我需要的是當用戶選擇另一首歌曲時停止前一首歌曲。
這裏是我的代碼...
//set onClickListner to the onItem SelectedListner
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
choose_ringtone = (int) id;
// Toast.makeText(setAlarm.this,"The selected choice is "+ id,Toast.LENGTH_SHORT).show();
String ringtSound = String.valueOf(parent.getItemAtPosition(position));
//set ringtone options
switch (ringtSound) {
case "alarm Sound 1":
mp = MediaPlayer.create(setAlarm.this, R.raw.wake_up);
break;
case "alarm Sound 2":
mp = MediaPlayer.create(setAlarm.this, R.raw.alarm);
break;
case "alarm Sound 3":
mp = MediaPlayer.create(setAlarm.this, R.raw.wake_up_tone);
break;
case "alarm Sound 4":
mp = MediaPlayer.create(setAlarm.this, R.raw.sweet_alarm);
break;
case "alarm Sound 5":
mp = MediaPlayer.create(setAlarm.this, R.raw.morning_alarm);
break;
default:
break;
}
if(mp!=null) {
mp.start();
}
Thanks.Its工作。我也使用isPlaying()來檢查mediaplayer是否正在運行。但我用它後切換case.I認爲,case.Any方式再次感謝您的建議.. – Sampath
很好聽! [接受答案](https://meta.stackexchange.com/questions/14994/do-you-feel-dirty-if-you-nudge-new-users-to-accept-your-answer-when-they-指示)是在這裏說謝謝的好方法。 – Bill