抖动几秒钟后如何更新图像?

时间:2020-04-12 23:08:46

标签: flutter dart flutter-layout

我正在构建Flutter应用程序,该应用程序需要在一段时间后更改图像。我认为将while循环与内部的sleep方法一起使用可能会解决问题。但事实并非如此,Image只会在循环结束后得到更改。应用程序用户界面也冻结了。

所需的输出:应该每10秒更改一次图像。

Image When I clicked On Start BUtton To start The Loop Image After Loop Ends

图像和按钮文本未更新循环运行时,请帮助我获得所需的输出。

datastore

1 个答案:

答案 0 :(得分:2)

您不应该在setState中使用sleep尝试将inc函数替换为:

void inc() async {
    while(imgnumber<10)
      {
        print(imgnumber);
        await Future.delayed(const Duration(seconds: 10));
        setState(() {
          imgnumber++;
        });
      }
  }