我有一个使用FadeInImage.assetNetwork加载图像的小部件,第一次加载应用程序时,图像淡入图像工作正常,而我尝试更新图像URL状态,FadeInImage选项不起作用。
Below小部件用于加载图像,其中qIcon在setState上动态设置。
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效果和占位符图像。
有没有解决这个问题?
FadeInImage
的描述表明淡入淡出仅在初始图像加载后发生一次,并且任何后续更改将仅导致图像被替换。
当占位符或图像更改时,此窗口小部件将继续显示先前加载的图像(如果有),直到新图像提供程序提供不同的图像。
这意味着您可能需要以生成新窗口小部件的方式实现图像更改,而不是仅更改URL。