Просмотр исходного кода

添加是否正在加载视频判断

hwh97 6 лет назад
Родитель
Сommit
0dd036ce35
2 измененных файлов с 6 добавлено и 4 удалено
  1. 5 1
      lib/src/cartoon_material_controls.dart
  2. 1 3
      lib/src/material_progress_bar.dart

+ 5 - 1
lib/src/cartoon_material_controls.dart

@@ -19,8 +19,9 @@ class CartoonMaterialControls extends StatefulWidget {
   final VoidCallback onTapPrevious;
   final VoidCallback onTapLove;
   final ValueNotifier<int> isCollect;
+  final ValueNotifier<int> isLoadingVideo;
 
-  const CartoonMaterialControls({Key key, this.enableQuickControl = false, this.moreVideo, this.onTapMoreVideo, this.onTapNext, this.onTapPrevious, this.onTapLove, this.isCollect}) : super(key: key);
+  const CartoonMaterialControls({Key key, this.enableQuickControl = false, this.moreVideo, this.onTapMoreVideo, this.onTapNext, this.onTapPrevious, this.onTapLove, this.isCollect, this.isLoadingVideo}) : super(key: key);
 
   @override
   State<StatefulWidget> createState() {
@@ -656,6 +657,9 @@ class CartoonMaterialControlsState extends State<CartoonMaterialControls> {
   }
 
   void _playPause() {
+    if (widget.isLoadingVideo.value == 1) {
+      return;
+    }
     bool isFinished = _latestValue.position >= _latestValue.duration;
 
     setState(() {

+ 1 - 3
lib/src/material_progress_bar.dart

@@ -29,9 +29,7 @@ class MaterialVideoProgressBar extends StatefulWidget {
 class _VideoProgressBarState extends State<MaterialVideoProgressBar> {
   _VideoProgressBarState() {
     listener = () {
-      WidgetsBinding.instance.addPostFrameCallback((_){
-        setState(() {});
-      });
+      setState(() {});
     };
   }