我可以在颤动的某个时刻隐藏 ChewieController 上的控件吗?

问题描述

我创建了一个 ChewieContoller,它看起来像这样:

_chewieController = ChewieController(
  videoPlayerController: widget.videoPlayerController,aspectRatio: 16/9,autoInitialize: true,autoplay: true,showOptions: false,showControls: true,errorBuilder: (context,errorMessage) {
    return Center(
      child: Text(
        errorMessage,style: const TextStyle(color: Colors.white),),);
  },);

现在 showControls 设置为 true,但有时我想将其更改为 false(我想隐藏控件)。但是当我尝试做这样的事情时:

_chewieController.showControls = false;

Flutter 给出一个错误,说 'showControls' 不能用作设置器,因为它是最终的。 尝试寻找不同的 setter,或将 'showControls' 设为非 final。

有没有办法改变 showControls 的属性

解决方法

尝试使用相同的 videoPlayerController 创建一个新实例。

_chewieController = ChewieController(
  videoPlayerController: _chewieController.videoPlayerController,aspectRatio: 16/9,autoInitialize: true,autoPlay: true,showOptions: false,showControls: true,);