Center(
child: CachedNetworkImage(
imageUrl: "http:/ sosme link here",
errorWidget: (context, url, error) => Icon(Icons.error),
fadeInCurve: Curves.easeIn ,
fadeInDuration: Duration(milliseconds:1000),
fadeOutCurve: Curves.easeOut,
fadeOutDuration: Duration(milliseconds:500),
imageBuilder: (context, imageProvider) => Container(
height: 250.0,
width: 250.0,
decoration: BoxDecoration(
border: Border.all(
color: Colors.black,
),
borderRadius: BorderRadius.all(Radius.circular(10)),
color: Colors.white,
image: DecorationImage(
image: imageProvider,
fit: BoxFit.cover,
),
),
),
),
),
我的目标是从可能存在和可能不存在的URL加载图像。
如果网址不存在,请加载 Assets 图片。
尝试在此处插入 Assets 图片,但无效。
正如我在想,如果加载时出错,则意味着找不到图像或其他东西。所以我想显示一个本地镜像。
有什么建议吗?
errorWidget: (context, url, error) => Icon(Icons.error),
错误,当我使用 Assets 图片时
最佳答案
您可以将FadeInImage
小部件用于您的用例。
这是给您的样品。
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
final title = 'Fade in images';
return MaterialApp(
title: title,
home: Scaffold(
appBar: AppBar(
title: Text(title),
),
body: Center(
child: FadeInImage.assetNetwork(
placeholder: 'assets/loading.gif',
image: 'https://picsum.photos/250?image=9',
),
),
),
);
}
}
您可以获取more information from official website。
关于image - Flutter:在找不到网络镜像或获取错误时显示本地镜像?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62061136/