我尝试从数据进行简单布局。 它应该只是文本和图像。 但是,查看数据时,它具有“图像”,空值或视频。
我的想法是当image = null时,只显示一个透明文件。 但是如何处理视频?
List profileImage = ["picture1.jpg", null , "picture3.jpg", "profile_video_3.mp4"];
child: Column(
children: <Widget>[
Text('Stack Oveflow'),
Image.asset('assets/quizImages/$FromprofileImage')
],
),
预期的输出是布局具有文本小部件并处理“图像小部件”中的空值和视频文件
处理此问题的最佳做法是什么? 谢谢
答案 0 :(得分:1)
这是您可以执行的操作。
List profileImage = ["picture1.jpg", null , "picture3.jpg", "profile_video_3.mp4"];
Scaffold(
body: Column(
children: <Widget> [
Text('Stack Oveflow'),
_displayMedia(profileImage[0]),
]
)
)
Widget _displayMedia(String media) {
if(media == null) {
return Image.asset('assets/transparent_file');
}
else if(media.contains('.mp4') {
return Image.asset('assets/video_thumbnail.png');
}
else {
return Image.asset('assets/quizImages/$media');
}
}
对于视频缩略图,您可以在此处查看如何生成它。 https://medium.com/@sreedevr/creating-thumbnail-from-video-in-flutter-d569000eaeac