如何在颤动中通过滚动控制器中途调用函数

问题描述 投票:-1回答:1

我有一个GridView,它在滚动控制器的末端延迟加载,但是当我到达滚动控制器的一半时,我想加载数据。如果我尝试执行if语句来检查滚动是否已达到控制器的50%,它将永远不会相等,但是,如果我执行大于50%的操作,它将多次调用函数,并以重复的数据结尾。如何避免重复或有更好的方法来进行此操作。

flutter flutter-layout
1个回答
0
投票

一种简单的方法就是使用您当前的代码和一个在函数中设置为true的附加布尔值“ wasCalled”。但是:我相信会有更好的解决方案。

我还没有真正使用GridViews,但是据我所知,它是懒惰地构建其子级的。您是否尝试过在孩子名单的中间插入自定义小部件?

例如在您的构建函数中,您可以:

@override
Widget build(BuildContext _) {
  callCustomFunction();
  return Container();
}
© www.soinside.com 2019 - 2024. All rights reserved.