diff --git a/lib/pages/video/detail/view.dart b/lib/pages/video/detail/view.dart index edaafd5c..c250778d 100644 --- a/lib/pages/video/detail/view.dart +++ b/lib/pages/video/detail/view.dart @@ -46,7 +46,7 @@ class _VideoDetailPageState extends State late BangumiIntroController bangumiIntroController; late String heroTag; - Rx playerStatus = PlayerStatus.none.obs; + PlayerStatus playerStatus = PlayerStatus.playing; double doubleOffset = 0; final Box localCache = GStorage.localCache; @@ -157,7 +157,7 @@ class _VideoDetailPageState extends State // 播放器状态监听 void playerListener(PlayerStatus? status) async { - playerStatus.value = status!; + playerStatus = status!; if (status == PlayerStatus.completed) { shutdownTimerService.handleWaitingFinished(); bool notExitFlag = false; @@ -387,13 +387,12 @@ class _VideoDetailPageState extends State Widget plPlayer = FutureBuilder( future: _futureBuilderFuture, builder: (BuildContext context, AsyncSnapshot snapshot) { - if (snapshot.connectionState == ConnectionState.done) { + if (snapshot.hasData && snapshot.data['status']) { return Obx( () => !videoDetailController.autoPlay.value || plPlayerController == null || - plPlayerController!.videoController == null || - playerStatus.value == PlayerStatus.none - ? Text(playerStatus.value.toString()) + plPlayerController!.videoController == null + ? nil : PLVideoPlayer( controller: plPlayerController!, videoIntroController: diff --git a/lib/plugin/pl_player/models/play_status.dart b/lib/plugin/pl_player/models/play_status.dart index 47c5e69b..2af09a61 100644 --- a/lib/plugin/pl_player/models/play_status.dart +++ b/lib/plugin/pl_player/models/play_status.dart @@ -1,13 +1,9 @@ import 'package:get/get.dart'; -enum PlayerStatus { completed, playing, paused, none } +enum PlayerStatus { completed, playing, paused } class PlPlayerStatus { - Rx status = Rx(PlayerStatus.none); - - bool get none { - return status.value == PlayerStatus.none; - } + Rx status = Rx(PlayerStatus.paused); bool get playing { return status.value == PlayerStatus.playing;