2013-02-20 119 views
0

我試圖在單個按鈕中實現播放/暫停,但是當我嘗試再次按下它時,它只是重新播放播放聲音後重新播放歌曲。我有搜索方式,並嘗試這種方法,它似乎不適合我。謝謝播放暫停單個按鈕

private OnClickListener handler1 = new OnClickListener(){ 
    public void onClick(View v){ 
    MediaPlayer mpE = MediaPlayer.create(GuitarTuner.this, R.raw.test2); 

     if (mpE.isPlaying()) { 
      mpE.pause(); 
     } else { 
      mpE.start(); 
     } 

    } 
};" 
+0

是嗎?因爲每次單擊按鈕時都會創建一個新的MediaPlayer? – njzk2 2013-02-20 16:44:16

回答

2

您正在創建媒體播放器每次。相反,嘗試移動

MediaPlayer mpE = MediaPlayer.create(GuitarTuner.this, R.raw.test2);

的處理程序之外。

0
MediaPlayer mpE = MediaPlayer.create(GuitarTuner.this, R.raw.test2); 

     play.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       if (mpE.isPlaying()) { 
        mpE.pause(); 
        play.setBackgroundResource(R.drawable.play); 
       } else { 

        mpE.start(); 
        play.setBackgroundResource(R.drawable.pause); 
       } 

      } 
     });