2013-12-14 67 views
0

我无法使用开/关按钮让MediaPlayer运行。带开/关按钮的MediaPlayer

我实例化的MediaPlayer和静音按钮:

music = MediaPlayer.create(getApplicationContext(), R.raw.loop); 
music.setAudioStreamType(AudioManager.STREAM_MUSIC); 
ibVolume = (ImageButton) findViewById(R.id.btn_volume); 
ibVolume.setBackgroundResource(R.drawable.mute); 
ibVolume.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     if (music.isPlaying() && (music != null)) { 
      music.stop(); 
      music.release(); 
      ibVolume.setBackgroundResource(R.drawable.volumeon); 
      return; 
     } 
     if (!music.isPlaying() && (music != null)) { 
      ibVolume.setBackgroundResource(R.drawable.mute); 
      music.start(); 
      return; 
     } 
    } 
}); 

它仅适用于1次迭代。打开声音,然后关闭,然后它已经死了。我能做什么?我已经度过了大约20个MediaPlayer的内容。我已经加载它关闭主线程,就什么.....它不工作:(

回答

0

删除行

music.release(); 

music.stop后();

那么它应该工作。

+0

没有释放(),它不停止。 –

+0

HABE你打过电话music.pause ()? – rachit

+0

实际上释放是不必要的。重新实例化不是 –

1

确定。只是需要释放之后重新实例MediaPlayer的,为什么不停止()停止?