【发布时间】:2019-12-20 17:31:03
【问题描述】:
有没有办法获取 CachedNetworkImage 的高度。我找到了this 解决方案来获取常规网络图像的高度。有没有办法为缓存的图像实现这个?
【问题讨论】:
标签: flutter
有没有办法获取 CachedNetworkImage 的高度。我找到了this 解决方案来获取常规网络图像的高度。有没有办法为缓存的图像实现这个?
【问题讨论】:
标签: flutter
只需对现有解决方案 https://stackoverflow.com/a/57640169/5882307 进行一点修改即可。
代码:
Future<Size> _calculateImageDimension() {
Completer<Size> completer = Completer();
Image image = new Image(image: CachedNetworkImageProvider("https://i.stack.imgur.com/lkd0a.png")); // I modified this line
image.image.resolve(ImageConfiguration()).addListener(
ImageStreamListener(
(ImageInfo image, bool synchronousCall) {
var myImage = image.image;
Size size = Size(myImage.width.toDouble(), myImage.height.toDouble());
completer.complete(size);
},
),
);
return completer.future;
}
用作:
_calculateImageDimension().then((size) => print("size = ${size}")); // 487.0,696.0
【讨论】: