我想使用FutureBuilder来检查url是否是png图像,然后构建一个或两个图像(在列表中) . 但不知何故,当我打印它时,Future总是返回null ...

结果是应用程序总是使用两个CachedNetworkImages构建listview,这不是我想要它做的 . 如果URL是图像,它应该只使用该URL构建CachedNetworkImage,如果不是,则应该更改URL并构建包含2个图像的listview .

child: new FutureBuilder(

future: _getImages(widget.imgUrl),

builder: (BuildContext context, AsyncSnapshot snapshot) {

switch (snapshot.connectionState) {

case ConnectionState.none:

return new Text('Press button to start');

case ConnectionState.waiting:

return new Text('Awaiting result...');

default:

if (snapshot.hasError)

return new Text('Error: ${snapshot.error}');

else {

print(snapshot.data);

if (snapshot.data == "image/png") {

return new SingleChildScrollView(

child: new CachedNetworkImage(

imageUrl: widget.imgUrl,

placeholder: new Center(

child: new AdaptiveProgressIndicator()),

),

);

} else {

return new ListView(

children: [

new CachedNetworkImage(

imageUrl:

widget.imgUrl.split('.png')[0] + '-0.png',

placeholder: new Center(

child: new AdaptiveProgressIndicator()),

),

new CachedNetworkImage(

imageUrl:

widget.imgUrl.split('.png')[0] + '-1.png',

)

],

);

}

}

}

}),

),

));

}

Future _getImages(String url) async {

await http.get(url).then((result) {

return result.headers['content-type'];

});

}

java build返回空值_将来与Flutter中的FutureBuilder一起返回null相关推荐

  1. =空值返回空值_@ParameterizedTest在@CvsSource中具有空值

    =空值返回空值 在JUnit 4中编写参数化测试非常麻烦. JUnit 5对框架进行了一些有用的改进,并且使用不同的参数运行相同的测试比以前的版本要简单得多. 但是,在这样的参数中传递空值存在一个小问 ...

  2. java 实体类返回大写_解决springboot bean中大写的字段返回变成小写的问题

    例如我的bean中有以下4个字段 private String code; private String _TOKENUUMS; private String TGC; private String ...

  3. qdialog 返回值_如何从Python中的QDialog实例返回值?

    我想打开一个QtGui.QDialog,从用户请求一组值,然后在单击"保存"后返回值.在 下面的代码应该在不修改的情况下运行.在import sys from PySide imp ...

  4. java char类型空值_展望Java的未来:空值类型

    java char类型空值 尽管有前途的Java值类型不是迫在眉睫,但我偶尔还是喜欢在OpenJDK valhalla-dev邮件列表中打听一下,以了解事情的进展情况并了解即将发生的事情. 诚然,由于 ...

  5. flutter 序列化_如何在Flutter中序列化对象

    flutter 序列化 If you intend to save user data to the shared preferences or local storage in your Flutt ...

  6. canvas java 上传截图_在Vue项目中使用html2canvas生成页面截图并上传

    使用方法 项目中引入 npm install html2canvas html代码 //html代码 js代码 // 引入html2canvas import html2canvas from 'ht ...

  7. element中有多个合计_深入理解 Flutter 中的 Widget, Element, RenderObject

    这篇文章基于 Flutter stable v1.7 总结下 Flutter 当前的 UI 系统以及相关的概念, 在最后会通过自己组合一个 Gradient Button 按钮的方式来熟悉 Flutt ...

  8. python一个函数调用另一个函数的返回值_在python函数中使用True,False和None作为返回值...

    建议不是你不应该使用True,False或None.这只是你不应该使用如果x == True. 如果x == True是愚蠢的,因为==只是一个二进制运算符!它的返回值为True或False,取决于它 ...

  9. 拦截httpservlet返回码_设计 API 接口,实现统一格式返回

    来源:老顾聊技术 前言 在移动互联网,分布式.微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式.一般系统的大致整体架构图如下: 接口交互 前端和后端进行交互,前端按照约定请求URL ...

最新文章

  1. 太嚣张了!会Python的人!
  2. 八个JS中你见过的类型。
  3. 封装各种生成唯一性ID算法的工具类
  4. 谷歌离线地图Api附获取教程
  5. java去掉字符串中前后空格函数_Java去除字符串中的空格
  6. Mac 配置jupyter notebook 扩展 Nbextensions
  7. 【android】Airtest IDE实现多设备管理以及自动装包
  8. springcloud五大组件?注解_Spring Cloud学习
  9. Directx11教程(60) tessellation学习(2)
  10. 基于RGB-D图像的语义场景补全研究进展综述
  11. win10快捷键启动屏幕保护程序
  12. vpay商城系统开发app
  13. 创建一个ROS工作空间(ROS Workspace)过程中遇到的问题
  14. 免安装mysql8.0
  15. eggjs框架学习心得
  16. 使用Vivado生成ADI的ADC例程(以AD9680为例)
  17. 江南大学大作业答案 计算机网络,江南大学大作业答案 计算机网络
  18. 《疯狂的程序员》读后感
  19. iOS 横竖屏切换的方法
  20. android 唱歌类技术,唱歌技巧与发声方法

热门文章

  1. 1-36随机生成6个不重复的数
  2. u-boot分析——struct gd_t与struct bd_t
  3. 各国家分析(马来西亚,秘鲁)
  4. 产品中的实名认证该怎么设计?
  5. 电商的折扣体系是如何搭建的?
  6. 如何将低频内容应用转化为高频应用?
  7. IO流中文件和文件夹的删除程序举例
  8. ffmpeg 和 SDL 教程2:输出到屏幕
  9. 小工具发布,QCountDown-语音倒计时
  10. Python 处理server返回gzip内容