【发布时间】:2021-11-30 08:31:54
【问题描述】:
如何在不执行下拉刷新的情况下更新列表视图元素 如果我在对话框窗口或 Api 中添加元素,如何自动添加/更新列表视图元素。
我应该使用 StreamBuilder 吗?
【问题讨论】:
如何在不执行下拉刷新的情况下更新列表视图元素 如果我在对话框窗口或 Api 中添加元素,如何自动添加/更新列表视图元素。
我应该使用 StreamBuilder 吗?
【问题讨论】:
使用Getx 之类的状态管理pub,或adlistener 之类的东西。
【讨论】:
是的,您可以使用流生成器,也可以使用 setstate
setState(() { });
【讨论】:
StreamBuilder Widget 基于与 Stream 交互的最新快照构建自身。因此,只要连接状态处于活动状态,只要在列表中添加新元素,应用程序的状态就会发生变化。
您还可以使用 ListView Builder 和 setState 方法的组合,但应用程序的状态需要在添加新元素时更改。早期的 StreamBuilder 小部件正在更新应用程序的状态。各种方法,例如在屏幕上添加按钮,可以帮助用户手动更改状态;可以根据用例使用。
您可以从官方文档中了解更多信息:setState method StreamBuilder
【讨论】:
这个答案并不完全是关于更新 listView,而是更新一个小部件(PiChart)。由于listview也是一个widget,所以实现不刷新就更新。
在这种方法中,我使用 streamBuilder 来更新小部件。因此无需刷新应用即可更新数据。
【讨论】: