generateUiImgFromNet function
用网络图片生成ui.Image
Implementation
Future<ui.Image> generateUiImgFromNet(String imageUrl) async {
final Completer<ui.Image> completer = Completer();
final ImageStream stream =
Image.network(imageUrl).image.resolve(ImageConfiguration.empty);
// 监听图片流
final listener = ImageStreamListener(
(ImageInfo info, bool isSync) {
completer.complete(info.image); // 成功加载图片
},
onError: (exception, stackTrace) {
completer.completeError('Failed to load image: $exception'); // 处理错误
},
);
stream.addListener(listener);
// 在完成后移除监听器
completer.future.then((_) => stream.removeListener(listener));
return completer.future;
}