2012-04-07 25 views
0

在Adnroid內,在第一次死我通過MediaPlayer.start()從過多點擊

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
public void click() 
{ 
    if(! mp.isPlaying()) { 
     mp.start(); 
    }//if 
}//met 
1

您可以禁用按鈕。

,或者你可以停止當前播放和星

中的onClick

新()