flutter didUpdateWidget视频列表刷新视频

  @override
  void didUpdateWidget(covariant CircleVideoItem oldWidget) {
  //根据视频传值来判断视频是否需要进行更新组件
    if (oldWidget.url != widget.url) {
      // url变化时重新执行一次url加载
         _urlInitChange();
    }
    super.didUpdateWidget(oldWidget);
  }
//视频初始化方法
  void _urlInitChange() async {
    if (widget.url == null || widget.url == '') return;
    if (_videoController != null) {
      /// 如果控制器存在,清理掉重新创建
      _videoController.removeListener(_videoListener);
      _videoController.pause();
      _videoController.dispose();
    }

    _videoController = VideoPlayerController.network(widget.url)
      ..initialize().then((data) {
        setState(() {});
      });
  }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容