gpt4 book ai didi

image - Flutter - 如何将 NetworkImage 转换为 ui.Image?

转载 作者:行者123 更新时间:2023-12-02 02:49:45 31 4
gpt4 key购买 nike

我需要将 NetworkImage 转换为 ui.Image。我尝试使用此 question 中的给定解决方案进行了一些调整,但它不起作用。

有人可以帮助我吗?

 Uint8List yourVar;
ui.Image image;
final DecoderCallback callback =
(Uint8List bytes, {int cacheWidth, int cacheHeight}) async {
yourVar = bytes.buffer.asUint8List();
var codec = await instantiateImageCodec(bytes,
targetWidth: cacheWidth, targetHeight: cacheHeight);
var frame = await codec.getNextFrame();
image = frame.image;
return image;
};
ImageProvider provider = NetworkImage(yourImageUrl);
provider.obtainKey(createLocalImageConfiguration(context)).then((key) {
provider.load(key, callback);
});

最佳答案

首先在你的类中创建一个字段:

var cache = MapCache<String, ui.Image>();

然后要获取 ui.Image,您只需调用:

var myUri = 'http:// ...';
var img = await cache.get(myUri, ifAbsent: (uri) {
print('getting not cached image from $uri');
return http.get(uri).then((resp) => decodeImageFromList(resp.bodyBytes));
});
print('image: $img');

当然,您应该添加一些 http 响应错误处理,但这是基本思想......

关于image - Flutter - 如何将 NetworkImage 转换为 ui.Image?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62207706/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com