fix: 滑动快进过快
This commit is contained in:
@ -478,19 +478,20 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final tapPosition = details.localPosition.dx;
|
final tapPosition = details.localPosition.dx;
|
||||||
int curSliderPosition = _.sliderPosition.value.inSeconds;
|
double scale = 60 / MediaQuery.of(context).size.width;
|
||||||
|
int curSliderPosition = _.sliderPosition.value.inMilliseconds;
|
||||||
late int result;
|
late int result;
|
||||||
if (tapPosition - _initTapPositoin > 0) {
|
if (tapPosition - _initTapPositoin > 0) {
|
||||||
// 快进
|
// 快进
|
||||||
/// TODO 优化屏幕越小效果越明显
|
/// TODO 优化屏幕越小效果越明显
|
||||||
result = (curSliderPosition + 1)
|
result = (curSliderPosition + (500 * scale).toInt())
|
||||||
.clamp(0, _.duration.value.inSeconds);
|
.clamp(0, _.duration.value.inMilliseconds);
|
||||||
} else {
|
} else {
|
||||||
// 快退
|
// 快退
|
||||||
result = (curSliderPosition - 1)
|
result = (curSliderPosition - (500 * scale).toInt())
|
||||||
.clamp(0, _.duration.value.inSeconds);
|
.clamp(0, _.duration.value.inMilliseconds);
|
||||||
}
|
}
|
||||||
_.onUodatedSliderProgress(Duration(seconds: result));
|
_.onUodatedSliderProgress(Duration(milliseconds: result));
|
||||||
_.onChangedSliderStart();
|
_.onChangedSliderStart();
|
||||||
_initTapPositoin = tapPosition;
|
_initTapPositoin = tapPosition;
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user