gpt4 book ai didi

flutter - Flutter 中的 "Image"和 "ImageProvider"有什么区别?

转载 作者:行者123 更新时间:2023-12-02 11:21:13 30 4
gpt4 key购买 nike

有与此主题相关的答案,但它们提供了解决方法而不是解释。

为什么在需要 ImageProvider 的地方不能使用 Image?从概念上讲,它们对我来说听起来是一样的。

child: new CircleAvatar(
backgroundImage: NetworkImage("https..."), // works
backgroundImage: Image.asset('images/image.png'), // error
),

尝试直接使用图像产生的错误是:

error: The argument type 'Image' can't be assigned to the parameter type 'ImageProvider'.

最佳答案

图像与 ImageProvider

图像提供程序向图像小部件提供图像。 ;D

图像提供者不一定拥有图像,但它知道如何获取它。

获取图像

如果您需要 Image 小部件,请使用以下之一:

  • Image.asset()
  • Image.network()
  • Image.file()
  • Image.memory()

获取 ImageProvider

如果您需要 ImageProvider,请使用以下之一:

  • AssetImage()
  • NetworkImage()
  • FileImage()
  • MemoryImage()

将 ImageProvider 转换为图像

如果您有一个 ImageProvider 对象并且想要一个 Image 小部件,请执行以下操作:

Image(
image: myImageProvider,
)

将图像转换为 ImageProvider

如果您有 Image 小部件并且需要其 ImageProvider,请执行以下操作:

myImageWidget.image

关于flutter - Flutter 中的 "Image"和 "ImageProvider"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59076399/

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