Flutter圆形头像不支持来自存储的图像

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flutter圆形头像不支持来自存储的图像相关的知识,希望对你有一定的参考价值。

我正在寻找一个可以同时处理圆形图像(网络图像和存储图像)的小部件。如果网络上不可用,我必须从存储中选择一个图像。我使用了许多小部件,并在其中找到了最佳的CircleAvatar。如果将图像放在backgroundImage中,它会变成圆形。它需要ImageProvider参数。我如何在backgroundImage中使用Image.file(_file)将其作为ImageProvider传递。

CircleAvatar(
            radius: 80.0,
            backgroundImage:
             //   NetworkImage("$imageNotfound"), // NetowrkImage extends ImageProvider class, so it works
             Image.file(_file),                   // How to convert my Image class to ImageProvider???
            backgroundColor: Colors.transparent,
          )

注意:我主要关心的是,使用任何一个都具有圆形属性的小部件(网络图像和存储图像)。

答案

您可以按以下方式处理本地资产

    CircleAvatar(
  radius: 50.0,
  backgroundImage: AssetImage("assets/images/image.jpg"),
)

网络

    CircleAvatar(
  radius: 50.0,
  backgroundImage: NetworkImage("https://images.unsplash.com/photo-1535083475219-aed59281b9aa?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=500&q=60"),
)

以上是关于Flutter圆形头像不支持来自存储的图像的主要内容,如果未能解决你的问题,请参考以下文章

Flutter实现圆形头像的几种方法

Flutter——CircleAvatar组件(圆形头像组件)

如何检查图像资产是不是存在,然后将其用作圆形头像或在圆形头像中写下姓名的第一个字母

对齐两个圆形头像的最佳方法是啥?

Flutter CircleAvatar backgroundImage没有填满圆圈

android-圆形头像