你好呀。如您所见,我想在 android 音乐播放器中显示流向用户的缓冲媒体级别。
我想为这个问题的解决方案是:
我是否应该创建一个具有透明背景的搜索栏和一个进度条,并将进度条重叠到搜索栏,而 progreesbar 显示缓冲的音乐级别。
但我不确定这个策略。有没有人可以帮助我在这个问题上达到目标的最佳方式。
你好呀。如您所见,我想在 android 音乐播放器中显示流向用户的缓冲媒体级别。
我想为这个问题的解决方案是:
我是否应该创建一个具有透明背景的搜索栏和一个进度条,并将进度条重叠到搜索栏,而 progreesbar 显示缓冲的音乐级别。
但我不确定这个策略。有没有人可以帮助我在这个问题上达到目标的最佳方式。
首先应该实现OnBufferingUpdateListener
活动,然后设置 onBufferingUpdate 像这样:
public void onBufferingUpdate(MediaPlayer arg0, int percent) {
/** Method which updates the SeekBar secondary progress by current song loading from URL position*/
seekBarProgress.setSecondaryProgress(percent);
}
只是因为直接设置百分比不起作用。这是对我有用的代码。
mediaPlayer.setOnBufferingUpdateListener(new MediaPlayer.OnBufferingUpdateListener() {
@Override
public void onBufferingUpdate(MediaPlayer mediaPlayer, int percent) {
double per = percent * 1.00;
per = (per / 100);
double f = (seekBar.getMax() * 1.00);
f = f * per;
if (percent < binder.seekBar.getMax()) {
seekBar.setSecondaryProgress((int) f);
}
}
});
这些 int 到 double 的转换是必要的,因为如果结果是 0.12 或 0.xx,int 除以 100 将得到 0。