为什么mediaPlayer.getCurrentPosition()在完成后小于getDuration()?

时间:2015-07-21 09:33:50

标签: android

    seekBar.setMax(mediaPlayer.getDuration());

播放mediaPlayer时,

    //100 milliseconds
    seekBar.setProgress(mediaPlayer.getCurrentPosition());

但是seekBar不能寻求最大值,

    mediaPlayer.setOnCompletionListener(new OnCompletionListener() {

        @Override
        public void onCompletion(MediaPlayer mp) {
            LogUtil.d(TAG, "CurrentPosition = " + mp.getCurrentPosition(+ " -- Duration = " + mp.getDuration());
        }
    });

我发现mediaPlayer.getCurrentPosition()总是小于mediaPlayer.getDuration()。如果我在完成后使用seekBar.setProgress(mp.getDuration()),那么seekBar动画就不是平滑的。

那么为什么getCurrentPosition()在完成后会比getDuration()小?

抱歉我的英文。

0 个答案:

没有答案