我想知道如何在影片中释放视频播放器,所以我是个陌生的人。
每当用户滚动到新页面然后停止上一页视频或释放上一页控制器时,我都想在PageView中停止最后播放的视频。
下面是我的代码。
class _VideoPlayerItemState extends State<VideoPlayerItem> with AutomaticKeepAliveClientMixin,TickerProviderStateMixin{
VideoPlayerController _videoController;
@override
Widget build(BuildContext context) {
return Stack(
children: <Widget>[
Container(
decoration: BoxDecoration(color: Colors.black),
child: Stack(
children: <Widget>[
Container(
decoration: BoxDecoration(color: Colors.black),
child: Stack(
children: <Widget>[
Center(
child: _videoController != null ? _videoController.value.initialized
? AspectRatio(
aspectRatio: _videoController.value.aspectRatio,
child: VideoPlayer(_videoController),
)
: Container() : Center(child: Text("LOADING VIDEO ON NULL"),),
),
],
),
),
],
),
),
],
);
}
此代码在用户滚动浏览量时执行。
onPageChangedForTutorial(PageController pageController) {
setState(() {
_videoController = VideoPlayerController.network(widget.videoUrl)
..initialize().then((value) {
_videoController.play();
});
_videoController.setLooping(true);
});
}
}
面对错误:每当我滚动页面时,直到新视频初始化之前,上一部视频才会停止。每当我滚动到新页面时,我都想立即停止播放
答案 0 :(得分:0)
尝试
setState(() {
_videoController.pause();
_videoController.dispose();
_videoController = VideoPlayerController.network(widget.videoUrl)
..initialize().then((value) {
_videoController.play();
});
_videoController.setLooping(true);
});