Flutter FadeInImage Network-在setState图像更改时图像不会褪色

时间:2019-04-27 14:52:00

标签: dart flutter

我有一个使用FadeInImage.assetNetwork加载图像的小部件,第一次加载应用程序时,图像的图像淡入效果很好,而我尝试更新图像URL状态时,FadeInImage选项不起作用。

“下方”窗口小部件用于加载图像,其中在setState上动态设置了qIcon。

  Widget quizIconCard(qIcon) {
    return Card(
      margin: EdgeInsets.all(5.0),
      child: Container(
        padding: EdgeInsets.all(10.0),
        child: Column(
          children: <Widget>[
            FadeInImage.assetNetwork(
              height: 128,
              width: 128,
              placeholder: 'assets/login_logo.png',
              image: qIcon,
              imageScale: 1.2,
            )
          ],
        ),
      ),
    );
  }

qIcon的setState更新图像URL,但看不到fadeIn效果或占位符图像。

有任何解决方法吗?

1 个答案:

答案 0 :(得分:1)

FadeInImage的描述表明,淡入仅在初始图像加载后发生一次,而随后的任何更改都将导致图像被替换。

  

当占位符或图像更改时,此小部件继续   显示以前加载的图像(如果有)直到新图像   提供者提供了不同的图像。

这意味着您可能需要以一种生成新窗口小部件的方式来实现图像更改,而不只是更改URL。