新的振翅。如何使用缓存的网络图像在flatter中显示网络图像,并将本地imageAsset中的图像作为占位符?
我有一个model/event.dart文件中的动态本地AssetImage,但如果imagePath为空,我希望显示一个来自网络的图像,其中包含缓存的\u network\u图像新的振翅。如何使用缓存的网络图像在flatter中显示网络图像,并将本地imageAsset中的图像作为占位符?,image,if-statement,flutter,networking,Image,If Statement,Flutter,Networking,我有一个model/event.dart文件中的动态本地AssetImage,但如果imagePath为空,我希望显示一个来自网络的图像,其中包含缓存的\u network\u图像 child: Stack( children: <Widget>[ ClipRRect( borderRadius: BorderRadius.circular(20.0),
child: Stack(
children: <Widget>[
ClipRRect(
borderRadius: BorderRadius.circular(20.0),
child: Image(
height: 200.0,
/* width: 280.0, */
width: MediaQuery.of(context).size.width * 0.80,
image: AssetImage(event.imagePath),
fit: BoxFit.cover,
),
),
],
),
从缓存的\u网络\u映像中,您可以执行以下操作
CachedNetworkImage(
imageUrl: "http://via.placeholder.com/200x150",
imageBuilder: (context, imageProvider) => Container(
decoration: BoxDecoration(
image: DecorationImage(
image: imageProvider,
fit: BoxFit.cover,
colorFilter:
ColorFilter.mode(Colors.red, BlendMode.colorBurn)),
),
),
placeholder: (context, url) => placeholder: (context, url) => {return Image.asset('assets/img/my_placeholder.png');},
errorWidget: (context, url, error) => Icon(Icons.error),
),
否则,您可以使用下面所示的
FadeInImageimage:NetworkImageurl,占位符:AssetImageassetName在AssetImage上出错,如-返回类型“AssetImage”不是关闭上下文所需的“Widget”。按如下方式返回占位符:context,url=>{return Image.asset'assets/img/my_placeholder.png';},我也更新了答案