Pet*_*vin 10 flutter flutter-layout
有与此主题相关的答案,但它们提供了解决方法而不是解释。
为什么不能在需要 ImageProvider 的地方使用 Image?从概念上讲,它们对我来说听起来是一样的。
child: new CircleAvatar(
backgroundImage: NetworkImage("https..."), // works
backgroundImage: Image.asset('images/image.png'), // error
),
Run Code Online (Sandbox Code Playgroud)
尝试直接使用图像产生的错误是:
错误:无法将参数类型“Image”分配给参数类型“ImageProvider”。
Sur*_*gch 11
图像提供程序是将图像提供给图像小部件。;D
图像提供者不一定在那里拥有图像,但它知道如何获取它。
如果您需要Image小部件,请使用以下之一:
Image.asset()Image.network()Image.file()Image.memory()如果您需要ImageProvider,请使用以下之一:
AssetImage()NetworkImage()FileImage()MemoryImage()如果您有一个ImageProvider对象并且想要一个Image小部件,请执行以下操作:
Image(
image: myImageProvider,
)
Run Code Online (Sandbox Code Playgroud)
如果您有一个Image小部件并且需要它的ImageProvider,请执行以下操作:
myImageWidget.image
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2854 次 |
| 最近记录: |