我将此图像作为 base64 字符串,然后我想将其转换为 BoxDecoration 中的图像,如下所示:
Container(
decoration: BoxDecoration(image: DecorationImage(image: Utility.imageFromBase64String(drink.image))),
这是将字符串解码为图像的函数。
功能
class Utility {
static Image imageFromBase64String(String base64String) {
return Image.memory(
base64Decode(base64String),
fit: BoxFit.fill,
);
}}
但是,我在 BoxDecoration 中遇到错误:
The argument type 'Image' can't be assigned to the parameter type 'ImageProvider<Object>'
错误在这部分,我想我不能放入 Image 因为它要求 ImageProvider:
image: DecorationImage(image: Utility.imageFromBase64String(drink.image))
任何想法如何使它工作?谢谢!
答案 0 :(得分:0)
来自 image
的 DecorationImage
属性属于 ImageProvider<object>
类型而不是 Image
。
像这样从MemoryImage
返回一个imageFromBase64String
static MemoryImage imageFromBase64String(String base64String) {
return MemoryImage(
base64Decode(base64String)
);
}
那么这个。
image: DecorationImage(
image: Utility.imageFromBase64String(drink.image),
fit: BoxFit.fill,
)