我列出了内部存储中的所有视频文件,现在我想在leading属性中显示每个文件的缩略图3.我犹豫不决地问了一个问题,希望能得到更好的回答
k3bvogb11#
对于其他人。使用video_player插件作为缩略图。这是非常有效的比较那些库,也适用于ios。只需创建statefullWidget作为类似的项目(如果你想显示在列表中使用该部件作为项目)。见下面的例子。
class _VideoItemState extends State<VideoItem> { VideoPlayerController _controller; @override void initState() { super.initState(); _controller = VideoPlayerController.network(widget.video.file.path) ..initialize().then((_) { setState(() {}); //when your thumbnail will show. }); } @override void dispose() { super.dispose(); _controller.dispose(); } @override Widget build(BuildContext context) { return ListTile( leading: _controller.value.initialized ? Container( width: 100.0, height: 56.0, child: VideoPlayer(_controller), ) : CircularProgressIndicator(), title: Text(widget.video.file.path.split('/').last), onTap: () { Navigator.push( context, MaterialPageRoute( builder: (context) => VideoPlayerPage(videoUrl: widget.video.file.path), ), ); }, ); } }
1条答案
按热度按时间k3bvogb11#
对于其他人。使用video_player插件作为缩略图。这是非常有效的比较那些库,也适用于ios。只需创建statefullWidget作为类似的项目(如果你想显示在列表中使用该部件作为项目)。见下面的例子。