Flutter获取网络图片的宽高
2024-01-09 18:00:41
根据图片的URL获取相应图片的宽高,记录一下:
Future<Size> getImageDimensions(String imageUrl) async {
// 创建一个ImageProvider
final ImageProvider provider = NetworkImage(imageUrl);
// 完成图片加载的Completer
final Completer<Size> completer = Completer<Size>();
// 定义图片加载监听器
final ImageStreamListener listener = ImageStreamListener(
(ImageInfo info, bool synchronousCall) {
// 图片加载完成,获取图片的宽度和高度
final ImageSize = Size(
info.image.width.toDouble(),
info.image.height.toDouble(),
);
// 完成completer
completer.complete(ImageSize);
},
onError: (exception, stackTrace) {
// 图片加载失败,完成completer并传递异常
completer.completeError(exception, stackTrace);
},
);
// 获取图片的ImageStream
final ImageStream stream = provider.resolve(const ImageConfiguration());
// 为ImageStream添加监听器
stream.addListener(listener);
// 返回Future,将在图片加载完成或发生错误时完成
return completer.future;
}
文章来源:https://blog.csdn.net/WriteBug001/article/details/135485312
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!