We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
通常会遇到这样的场景,列表页顶部通常有搜索框,用户输入搜索内容触发整个列表重新获取数据并刷新列表。InfiniteListView并不支持用代码控制刷新。也有朋友给过一些例子 例如在 InfiniteListView 加上 ScrollController,用代码控制ScrollController下拉位置来触发下拉刷新,但是这样做有很多问题,例如当网络延时或其他原因查不到数据时,用这个方法就触发不了第二次刷新。我自己也想了一个解决方案,目前可以正常用代码触发刷新,希望交流一下。 添加一个控制器类 class InfiniteListViewRefreshController { Future Function(bool) refreshFunc; void refresh(bool pullDown) { if(refreshFunc!=null) refreshFunc(pullDown); } }
在 InfiniteListView的构造函数中传入此类的实例。
在_InfiniteListViewState 中的initState 方法中将_InfiniteListViewState内置的刷新方法签名赋值给InfiniteListViewRefreshController 实例的refreshFunc字段,代码如下:
@OverRide void initState() { super.initState();
state = widget.initState ?? LoadingState<T>(); if (!state.initialized) { refresh(false); } if(widget.refreshController!=null) { widget.refreshController.refreshFunc = refresh; }
}
这样可以调用InfiniteListViewRefreshController 的实例方法 refresh 来触发刷新。
The text was updated successfully, but these errors were encountered:
InfiniteListView 组件已废弃,原因是:
Sorry, something went wrong.
No branches or pull requests
通常会遇到这样的场景,列表页顶部通常有搜索框,用户输入搜索内容触发整个列表重新获取数据并刷新列表。InfiniteListView并不支持用代码控制刷新。也有朋友给过一些例子 例如在 InfiniteListView 加上 ScrollController,用代码控制ScrollController下拉位置来触发下拉刷新,但是这样做有很多问题,例如当网络延时或其他原因查不到数据时,用这个方法就触发不了第二次刷新。我自己也想了一个解决方案,目前可以正常用代码触发刷新,希望交流一下。
添加一个控制器类
class InfiniteListViewRefreshController {
Future Function(bool) refreshFunc;
void refresh(bool pullDown) {
if(refreshFunc!=null) refreshFunc(pullDown);
}
}
在 InfiniteListView的构造函数中传入此类的实例。
在_InfiniteListViewState 中的initState 方法中将_InfiniteListViewState内置的刷新方法签名赋值给InfiniteListViewRefreshController 实例的refreshFunc字段,代码如下:
@OverRide
void initState() {
super.initState();
}
这样可以调用InfiniteListViewRefreshController 的实例方法 refresh 来触发刷新。
The text was updated successfully, but these errors were encountered: