flutter - 跟踪进度 Flutter 视频播放器

标签 flutter flutter-layout flutter-dependencies

您好,我正在使用 flutter 视频播放器插件,我有类似这样的东西 [{phrase:"something", startAt: 1039}, {phrase:"other somthing", startAt: 26500}] 有没有一种方法可以在播放视频时根据开始时间在 ui 中更改短语。

我尝试使用持续时间为 100 毫秒的计时器,但我没有从 Flutter 视频播放器插件中检索到准确的时间。

最佳答案

您可能想看看 stateful widgets因为它们允许您这样做。简而言之,您可以将 phrase 设置为某个变量,一旦视频开始播放,您就可以调用 setState 并更改变量。 Flutter 会自动重绘 widget,文本也会更新。

要确定视频播放器是否正在播放,您可以向视频 Controller 添加一个监听器。

_controller = VideoPlayerController.network(
      'http://www.sample-videos.com/video/mp4/720/big_buck_bunny_720p_20mb.mp4',
    )
      ..addListener(() {
        final bool isPlaying = _controller.value.isPlaying;
        if (isPlaying != _isPlaying) {
          setState(() {
            _isPlaying = isPlaying;
          });
        }
      })
      ..initialize().then((_) {
        // Ensure the first frame is shown after the video is initialized, even before the play button has been pressed.
        setState(() {});
      });

关于flutter - 跟踪进度 Flutter 视频播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51731676/

相关文章:

flutter - 如何在项目网格列表中的图像内添加文本和一些内容

flutter - 使用 flutter/dart 加密并使用 CryptoJS 解密 aes 返回空字符串

flutter - 如何在另一个异步函数中使用异步将来列表?

dart - Flutter 自定义范围 slider

flutter - 用于 Flutter Web 的 folder_picker?

flutter - 不为空时在 TextField 中显示图标

Flutter Color.RGB 和 adobe XD 具有相同的颜色值不匹配?

flutter - 如何在 flutter 中将文本与图像对齐?

macos - 来自 CI/CD 管道的 Flutter 命令问题

flutter - 如何在 flutter 中为图标填充颜色