flutter_easyrefresh

正如名字一样,EasyRefresh很容易就能在Flutter应用上实现下拉刷新以及上拉加载操作,它支持几乎所有的Flutter控件。它的功能与Android的SmartRefreshLayout很相似,同样也吸取了很多三方库的优点。EasyRefresh中集成了多种风格的Header和Footer,但是它并没有局限性,你可以很轻松的自定义。使用Flutter强大的动画,甚至随便一个简单的控件也可以完成。EasyRefresh的目标是为Flutter打造一个强大,稳定,成熟的下拉刷新框架。github地址:https://github.com/xuelongqy/flutter_easyrefresh

特点功能:

  • 支持Andorid(光晕),ios(越界回弹)效果
  • 支持绝大多数Widget
  • 支持自定义并且已经集成了很多炫酷的 Header 和 Footer
  • 支持下拉刷新、上拉加载(可自动)
  • 支持 Header 和 Footer 列表嵌入以及视图浮动两种形式
  • 支持列表事件监听,制作任何样子的 Header 和 Footer,并且能够放在任何位置
  • 支持首次刷新,并自定义视图
  • 支持自定义列表空视图

这次就用easy_refresh插件,实现下拉刷新以及上拉加载功能。

1.在 pubspec.yaml 中添加依赖:

  flutter_easyrefresh: ^1.2.

然后页面引入:

import 'package:flutter_easyrefresh/easy_refresh.dart';

2.在布局文件中添加 EasyreFresh

// 方式一
EasyRefresh(
child: ScrollView(),
onRefresh: () async{
....
},
onLoad: () async {
....
},
)
// 方式二
EasyRefresh.custom(
slivers: <Widget>[],
onRefresh: () async{
....
},
onLoad: () async {
....
},
)
// 方式三
EasyRefresh.builder(
builder: (context, physics, header, footer) {
return CustomScrollView(
physics: physics,
slivers: <Widget>[
...
header,
...
footer,
],
);
}
onRefresh: () async{
....
},
onLoad: () async {
....
},
)

3.触发刷新和加载动作

EasyRefreshController _controller = EasyRefreshController();
....
EasyRefresh(
controller: _controller,
....
);
....
_controller.callRefresh();
_controller.callLoad();

4.控制加载和刷新完成

 EasyRefreshController _controller = EasyRefreshController();
....
EasyRefresh(
enableControlFinishRefresh: true,
enableControlFinishLoad: true,
....
);
....
_controller.finishRefresh(success: true);
_controller.callLoad(success: true, noMore: false);

制作上拉加载效果示例

https://www.cnblogs.com/joe235/p/11557772.html

最新文章

  1. 工作总结_JS_1
  2. 用val()获取与设置input的值
  3. Java入门1dayCode
  4. DDD:一个朋友对领域驱动的小结
  5. IOS杂笔- 7(类方法load与initialize的区别 浅析)
  6. Linux ext2文件系统
  7. postman简单教程,使用tests模块来验证接口时是否通过
  8. webstorm配置svn详解
  9. 2019 icpc南昌全国邀请赛-网络选拔赛J题 树链剖分+离线询问
  10. js之promise讲解
  11. MySQL单表多次查询和多表联合查询,哪个效率高?
  12. JAVA线程池的实际运用
  13. 「SHOI2016」黑暗前的幻想乡 解题报告
  14. zmq setsockopt()
  15. salt stack 远程命令
  16. $tojson和json.stringify的区别
  17. Apache 配置文件详解
  18. keras—神经网络CNN—MNIST手写数字识别
  19. 第一个spring冲刺心得及感想
  20. Jmeter Cookie管理器 获取JSESSIONID

热门文章

  1. Linux 误卸载自带python后的解决办法
  2. c# json数据解析——将字符串json格式数据转换成对象或实体类
  3. JAVA遇见HTML——JSP篇(JSP内置对象下)
  4. [Google Guava] 1.5-Throwables:简化异常和错误的传播与检查
  5. C#读取App.config/Web.config
  6. 【AGC030F】Permutation and Minimum(DP)
  7. sigaction()函数
  8. ansible的become
  9. 【转】java 解析多层json
  10. Feeding Chicken