我正在构建Flutter应用程序,该应用程序需要在一段时间后更改图像。我认为将while循环与内部的sleep方法一起使用可能会解决问题。但事实并非如此,Image只会在循环结束后得到更改。应用程序用户界面也冻结了。
所需的输出:应该每10秒更改一次图像。
图像和按钮文本是未更新。循环运行时,请帮助我获得所需的输出。
datastore
答案 0 :(得分:2)
您不应该在setState
中使用sleep尝试将inc
函数替换为:
void inc() async {
while(imgnumber<10)
{
print(imgnumber);
await Future.delayed(const Duration(seconds: 10));
setState(() {
imgnumber++;
});
}
}