我正在尝试制作流媒体音乐播放器,但在尝试实现的 SeekBar 时遇到了一些问题。目前,它在播放的第一首歌曲上正确运行。我可以正确搜索,它会在另一个线程中自我更新。我遇到的问题是,当一首新歌开始时,SeekBar 从最后一首歌曲的持续时间闪烁到当前歌曲的当前进度。任何帮助,将不胜感激。
SeekBar 声明
progress = (SeekBar) findViewById(R.id.seekBar1);
progress.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if(fromUser) {
media.seekTo(progress);
}
else {
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
});
SeekBar 在单独的线程中更新
int current = 0;
int total = media.getDuration();
progress.setMax(total);
progress.setIndeterminate(false);
while(media!=null && current < total){
try {
Thread.sleep(1000);
current = media.getCurrentPosition();
progress.setProgress(current);
} catch (Exception e) {
e.printStackTrace();
}
};