首页 > 解决方案 > 任何人请帮助。Flutter 上的 Listview 未更新

问题描述

https://i.stack.imgur.com/8yq5w.png 当我第一次点击 Shirshak 时,它没有打开任何东西。当我尝试在 Shirshak 上第二次单击移动设备时,它会打开新屏幕https://i.stack.imgur.com/4fVMN.png。当我在 2 中第三次点击移动设备时,它会再次打开 Shirshak。但是当我第四次点击它时,它会打开 2 https://i.stack.imgur.com/kqEqv.png。这种情况一次又一次地发生,我必须点击两次才能进入聊天屏幕。

这是我的代码:

https://i.stack.imgur.com/iGYfZ.png

https://i.stack.imgur.com/MdY1G.png

https://i.stack.imgur.com/tIUKh.png

标签: flutterlistview

解决方案


  • 第 97 行中的函数 getDataForChat() 是一个异步方法,但您没有为它使用 await 和 ansync 关键字(在您的代码中从 Internet 收集数据的许多其他方法也没有标记为 async 和 await)。

  • 当单击其中任何一个按钮时,您应该禁用所有其他按钮。

  • 您正在使用 Stateful Widget,因此要更改任何变量的值,您必须使用 setState 。例如,在第 101 行,您应该使用 setState 将 isLoading 设置为 false。


推荐阅读