Flutter:如何处理具有空值的图像?

时间:2019-09-22 06:07:27

标签: flutter flutter-layout

我尝试从数据进行简单布局。 它应该只是文本和图像。 但是,查看数据时,它具有“图像”,空值或视频。

我的想法是当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')
                ],
              ),

预期的输出是布局具有文本小部件并处理“图像小部件”中的空值和视频文件

处理此问题的最佳做法是什么? 谢谢

1 个答案:

答案 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