如何将CachedNetworkImage转换为ImageProvider?

时间:2018-07-26 10:45:12

标签: flutter

我想在CircleAvatar小部件中显示CachedNetworkImage,但是backgroundImage参数需要ImageProvider。

3 个答案:

答案 0 :(得分:2)

使用CachedNetworkImageProvider

  

使用以下命令创建一个ImageProvider,以从url加载图像   规模。当图像加载失败时,将调用errorListener。

答案 1 :(得分:1)

如果您想要的只是一个圆形的CachedNetworkImage,则可以使用ClipOval

    ClipOval(
        child: CachedNetworkImage(
            width: 32,
            height: 32,
            fit: BoxFit.cover,
            imageUrl: 'BLA.jpg',
            placeholder: CircularProgressIndicator(),
        ),
    ),

答案 2 :(得分:1)

请使用 CachedNetworkImage 中的 imageBuilder

 CachedNetworkImage(
      placeholder: (context, url) => CircularProgressIndicator(),
      errorWidget: (context, url, error) => new Icon(Icons.error),
      fit: BoxFit.contain,
      imageUrl: imagePath,
      imageBuilder: (context, imageProvider) { // you can access to imageProvider
        return CircleAvatar( // or any widget that use imageProvider like (PhotoView)
          backgroundImage: imageProvider,
        );
      },
    )