diff --git a/lib/plugin/pl_player/controller.dart b/lib/plugin/pl_player/controller.dart index bda33a710..fe1f088fb 100644 --- a/lib/plugin/pl_player/controller.dart +++ b/lib/plugin/pl_player/controller.dart @@ -1432,9 +1432,20 @@ class PlPlayerController { } } + int _durationInSeconds(Duration duration) { + return (duration.inMilliseconds / 1000).round(); + } + // 双击播放、暂停 Future onDoubleTapCenter() async { - videoPlayerController!.playOrPause(); + if (videoPlayerController!.state.completed || + (_durationInSeconds(position.value) == + _durationInSeconds(duration.value))) { + await videoPlayerController!.seek(Duration.zero); + videoPlayerController!.play(); + } else { + videoPlayerController!.playOrPause(); + } } final RxBool mountSeekBackwardButton = false.obs;