2017-01-09 118 views
1

我正在创建一个简单的音板来播放用户单击按钮时发出的声音。问题是,如果按钮按下不够(通常大约10次),它最终会停止播放,并显示错误E/MediaPlayer: error (1, -19) 我做错了什么?我的代码时播放的声音:E/MediaPlayer:error(1,-19)

private void playSound(int soundID){ 
    final MediaPlayer mp = MediaPlayer.create(this,soundID); 
    mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
     @Override 
     public void onPrepared(MediaPlayer mediaPlayer) { 
      mp.start(); 

     } 
    }); 
} 
+0

你已经实现了播放和暂停功能,并且还添加了按钮点击 – Pavya

+0

是的,我添加了按钮点击这只是一个基本的方法,我可以在每个按钮上使用。我不知道是什么玩和暂停功能,所以我不认为我实现了它。 – CarbonZonda

+0

ok .. in onPrepared add if(mp!= null)mp.start(); – Pavya

回答

0
private void playSound(int soundID){ 
    final MediaPlayer mp = MediaPlayer.create(this,soundID); 
    mp.start(); 
    mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { 
     @Override 
     public void onCompletion(MediaPlayer mediaPlayer) { 
      mp.release(); 
     } 
    }); 
}