Наконец-то я понял это !!
Решение, которое я нашел, было примерно таким:
Прежде всего, установите максимальный прогресс для seekbar как продолжительность видео
videoView.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
seekBar.setMax(videoView.getDuration());
seekBar.postDelayed(onEverySecond, 1000);
}
});
Этот исполняемый файл будет продолжать обновлять индикатор выполнения:
private Runnable onEverySecond=new Runnable() {
@Override
public void run() {
if(seekBar != null) {
seekBar.setProgress(videoView.getCurrentPosition());
}
if(videoView.isPlaying()) {
seekBar.postDelayed(onEverySecond, 1000);
}
}
};
И затем setOnSeekBarChangeListener для панели поиска может использоваться для получения пользовательского поиска на носителе.Используя логическое значение fromUser , мы можем определить, был ли это обратный вызов из-за взаимодействия с пользователем или
seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if(fromUser) {
// this is when actually seekbar has been seeked to a new position
videoView.seekTo(progress);
}
}
});