Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter Flatter CachedNetworkImage如何重新加载图片?_Flutter - Fatal编程技术网

Flutter Flatter CachedNetworkImage如何重新加载图片?

Flutter Flatter CachedNetworkImage如何重新加载图片?,flutter,Flutter,我遇到了一个问题。成功获得图片链接后,我模拟了网络断开。此时,图片加载失败,显示了我设置的默认控件。然后我重新打开了网络,仍然显示我的设置。控制。重新加载仍不能正常显示。我该怎么办 Widget build(BuildContext context) { return CachedNetworkImage( imageUrl: imgurl, width: w, height: h, useOldImageOnUrlChange: _us

我遇到了一个问题。成功获得图片链接后,我模拟了网络断开。此时,图片加载失败,显示了我设置的默认控件。然后我重新打开了网络,仍然显示我的设置。控制。重新加载仍不能正常显示。我该怎么办

 Widget build(BuildContext context) {
    return CachedNetworkImage(
      imageUrl: imgurl,
      width: w,
      height: h,
      useOldImageOnUrlChange: _useOldImageOnUrlChange,
      fadeInDuration: Duration(microseconds: 100),
      fadeOutDuration: Duration(microseconds: 100),
      errorWidget: (context, url, error) {
        return Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Image.asset("assets/images/ji1.png"),
            SizedBox(
              height: 10,
            ),
            FlatButton(
              onPressed: () {
                setState(() {
                  _useOldImageOnUrlChange = true;
                  imgurl = imgurl;
                });
              },
              splashColor: Colors.white.withOpacity(0.2),
              child: MText(
                text: "加载失败".tr(),
                color: IColor.orangeAccent,
              ),
            ),
          ],
        );
      },
      progressIndicatorBuilder: (BuildContext context, String url, progress) {
        double jd = progress.progress;
        return Container(
          width: double.infinity,
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            crossAxisAlignment: CrossAxisAlignment.center,
            children: [
              MText(
                text: (index + 1).toString(),
                fontSize: 22,
                color: IColor.primary,
              ),
              SizedBox(
                height: 10,
              ),
              Container(
                width: 200,
                child: LinearProgressIndicator(
                  value: jd,
                  backgroundColor: Colors.white,
                  valueColor: AlwaysStoppedAnimation<Color>(IColor.primary),
                ),
              ),
            ],
          ),
        );
      },
    );
  } ```


小部件构建(构建上下文){
返回CachedNetworkImage(
imageUrl:imgurl,
宽度:w,
高度:h,,
useOldImageOnUrlChange:\u useOldImageOnUrlChange,
fadeInDuration:持续时间(微秒:100),
衰减持续时间:持续时间(微秒:100),
errorWidget:(上下文、url、错误){
返回列(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
Image.asset(“assets/images/ji1.png”),
大小盒子(
身高:10,
),
扁平按钮(
已按下:(){
设置状态(){
_useOldImageOnUrlChange=true;
imgurl=imgurl;
});
},
飞溅颜色:颜色。白色。不透明度(0.2),
儿童:多行文字(
文本:“加载失败".tr(),
颜色:IColor.orangeAccent,
),
),
],
);
},
progressIndicatorBuilder:(构建上下文、字符串url、进度){
双jd=进度。进度;
返回容器(
宽度:double.infinity,
子:列(
mainAxisAlignment:mainAxisAlignment.center,
crossAxisAlignment:crossAxisAlignment.center,
儿童:[
多行文字(
text:(索引+1).toString(),
尺寸:22,
颜色:IColor.primary,
),
大小盒子(
身高:10,
),
容器(
宽度:200,
子对象:线性表达式指示器(
价值:jd,
背景颜色:Colors.white,
valueColor:AlwaysStoppedAnimation(IColor.primary),
),
),
],
),
);
},
);
} ```