Flutter的刷新组件以前比较流行的是pull_to_refresh,现在已经不再维护了,新的刷新组件是easy_refresh,支持Flutter SDK 3.x。它的特点:
- 支持所有的滚动组件
- 滚动物理作用域,精确匹配滚动组件
- 集成多个炫酷的 Header 和 Footer
- 支持自定义样式,实现各种动画效果
- 支持下拉刷新、上拉加载(可使用控制器触发和结束)
- 支持指示器位置设定,结合监听器也放置在任何位置
- 支持页面启动时刷新,并自定义视图
- 支持安全区域,不再有遮挡
- 自定义滚动参数,让列表具有不同的滚动反馈和惯性
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| EasyRefreshController _controller = EasyRefreshController( controlFinishRefresh: true, controlFinishLoad: true, ); .... EasyRefresh( header: MaterialHeader(), footer: MaterialFooter(), controller: _controller, onRefresh: () async { .... _controller.finishRefresh(); _controller.resetFooter(); }, onLoad: () async { .... _controller.finishLoad(IndicatorResult.noMore); }, .... ); .... _controller.callRefresh(); _controller.callLoad();
|
参考