flutter上拉,flutter 下拉菜单

Flutter-下拉刷新、上拉加载组件的封装和使用

闲来有空,升级了新的SDK版本,之前旧的组件不再可用,封装一个全新支持Dart“nullsafety”空安全特性、更加简单易用的ListView组件。

成都创新互联专注于企业全网营销推广、网站重做改版、合浦网站定制设计、自适应品牌网站建设、成都h5网站建设购物商城网站建设、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为合浦等各大城市提供网站开发制作服务。

利用NotificationListener的监听事件实现Pull up load more。

利用RefreshIndicator组件实现Pull down refresh。

已开源上传至GITHUB,欢迎Star、Fork。

Flutter 下拉刷新、上拉加载flutter_easyrefresh的使用

flutter_easyrefresh: ^2.0.5

Pub get一下

下面我就以flutter_easyrefresh这个插件进行讲解。

[参照]{ }

Flutter:手把手教你使用滚动型列表组件:ListView

ListView的基础创建使用有三种方式:

通过默认构造函数来创建列表,应用场景 = 短列表

这种方式创建的列表存在一个问题:对于那些长列表或者需要较昂贵渲染开销的子组件,即使还没有出现在屏幕中但仍然会被ListView所创建,这将是一项较大的开销,使用不当可能引起性能问题甚至卡顿。

长列表

列表子项之间需要分割线

ListView的进阶使用主要包括:下拉刷新 上拉加载

在Flutter中,ListView结合RefreshIndicator组件实现下拉刷新

通过包裹一层RefreshIndicator,自定义onRefresh回调方法实现

方式有两种:

通过ListView.controller属性可以判断ListView是否滑动到了底部,再进行上拉加载

NotificationListener是一个Widget,可监听子Widget发出的Notification

ListView在滑动时中会发出ScrollNotification类型的通知,可通过监听该通知得到ListView的滑动状态,判断是否滑动到了底部,从而进行上拉加载

NotificationListener有一个onNotification属性,定义了监听的回调方法,通过它来处理加载更多逻辑

不定期分享关于 安卓开发 的干货,追求 短、平、快 ,但 却不缺深度 。

Flutter listview下拉刷新,上拉加载更多封装

本文在 pull_to_refresh 的基础上对刷新做了封装,可以根据刷新状态自定义想要的头和尾。

本文刷新头和尾都使用的 lottie 动画,

lottie动画可以参考

接下来就可以在需要使用list view刷新的页面使用了 如下:

效果图:

Flutter下拉刷新、上拉加载

注意: 滚动组件添加: physics: ClampingScrollPhysics() 可以处理IOS系统的物理滚动的效果(即橡皮筋效果)

ListView 是最常用的可滚动组件之一,可以沿一个方向线性排布所有子组件,并且它也支持基于Sliver的延迟构建模型

默认构造函数:

ListView.builder:

ListView.separated:

ListView.separated 可以在生成的列表项之间添加一个分割组件,它比 ListView.builder 多了一个 separatorBuilder 参数,该参数是一个分割组件生成器。

RefreshIndicator 下拉刷新:

RefreshIndicator 是 Material 风格的下拉刷新组件。

CupertinoSliverRefreshControl 下拉刷新:

CupertinoSliverRefreshControl 是 ios 风格的下拉刷新控件。

上拉加载的功能,需要用到 ScrollController + ListView组件:


标题名称:flutter上拉,flutter 下拉菜单
文章分享:http://hbruida.cn/article/hopeho.html