首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用Pod播放器在颤音中改变视频?

如何用Pod播放器在颤音中改变视频?
EN

Stack Overflow用户
提问于 2022-05-01 03:10:42
回答 1查看 467关注 0票数 0

我一开始就能加载视频,但是当我在setState上点击改变youtube链接时,它不起作用,不知道为什么。按下按钮改变视频的方法是什么?我正在使用Pod播放器插件。Just like in this image

代码语言:javascript
复制
import 'package:flutter/material.dart';
import 'package:pod_player/pod_player.dart';

class VideoPlayer extends StatefulWidget {
  const VideoPlayer({Key? key}) : super(key: key);

  @override
  State<VideoPlayer> createState() => _VideoPlayerState();
}

class _VideoPlayerState extends State<VideoPlayer> {
  String YTLink = "https://youtu.be/A3ltMaM6noM";

  late final PodPlayerController controller;
  @override
  void initState() {
    controller = PodPlayerController(
      playVideoFrom: PlayVideoFrom.youtube(YTLink),
    )..initialise();
    super.initState();
  }

  @override
  void dispose() {
    controller.dispose();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SafeArea(
          child: ListView(
        children: [
          PodVideoPlayer(controller: controller),
          OutlinedButton(
              onPressed: () {
                setState(() {
                  YTLink =
                      "https://www.youtube.com/watch?v=Q98aCklzCBE&ab_channel=DWDocumentary";
                });
              },
              child: Text("Play Another Video")),
          OutlinedButton(
              onPressed: () {
                setState(() {
                  YTLink =
                      "https://www.youtube.com/watch?v=AnYsa_c4GxU&ab_channel=FreeDocumentary";
                });
              },
              child: Text("Play Another Video 2")),
        ],
      )),
    );
  }
}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-01 06:29:21

而不是使用setState,而是使用控制器changeVideo方法。

将其添加到按钮的onPressed中:

//1

代码语言:javascript
复制
`controller.changeVideo(
                playVideoFrom: PlayVideoFrom.youtube(
                    "https://www.youtube.com/watch?v=Q98aCklzCBE&ab_channel=DWDocumentary"));`

//2

代码语言:javascript
复制
`controller.changeVideo(
                playVideoFrom: PlayVideoFrom.youtube(
                    "https://www.youtube.com/watch?v=AnYsa_c4GxU&ab_channel=FreeDocumentary"));`
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72073733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档