Android上实现音乐播放器应用的最佳实践[页13]
2023-08-23次
javamediaPlayer.setOnPreparedListener(mp -> {
// 歌曲准备好了,可以开始播放了
mediaPlayer.start();
// 开启定时器,每秒钟更新一次播放进度
new Timer().schedule(new TimerTask() {
@Override
public void run() {
int currentPosition = mediaPlayer.getCurrentPosition();
handler.post(() -> {
// 更新UI,显示当前播放进度
tvCurrentTime.setText(formatTime(currentPosition));
seekBar.setProgress(currentPosition);
});
}
}, 0, 1000);
});
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser) {
// 用户拖动进度条,跳到指定位置
mediaPlayer.seekTo(progress);
tvCurrentTime.setText(formatTime(progress));
}
}
@Override