我在父类中有一个MediaPlayer成员变量,启动后它从未调用onCompletion,或者至少onCompletionListener从未捕获它?我的代码大致如下
mediaPlayer = Mediaplayer.create(this, currentSample);
mediaPlayer.start();
在代码的其他地方是我的onCompletionListener。
mediaPlayer.setOnCompletionListener(new OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
if (repeatFlag == true) {
handler.removeCallbacks(sampleRunnable);
handler.postDelayed(sampleRunnable, delay);
}
}
});
我正在使用handler来调用sampleRunnable,因为我想以指定的延迟间隔循环它。但是,onCompletion似乎从未被调用。我非常确定这一点,因为我在onCompletion中设置了断点,但程序从未被挂起,我也尝试过单步执行,但似乎从未被调用。有任何想法吗?