重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
pubspec.yaml中配置该库
创新互联建站坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。10年网站建设经验创新互联建站是成都老牌网站营销服务商,为您提供成都做网站、成都网站建设、网站设计、H5场景定制、网站制作、成都品牌网站建设、微信小程序开发服务,给众多知名企业提供过好品质的建站服务。
先讲一下选择器适配器的格式如下
上面这个适配器的写法看起来比较糟糕,数据少还可以一个一个的写下去,一旦多了不可能一个个去写,而是需要将给出的数据遍历生成上面的这种格式
参考下面的数据数据处理,去生成相对应的数据适配器
本文在 pull_to_refresh 的基础上对刷新做了封装,可以根据刷新状态自定义想要的头和尾。
本文刷新头和尾都使用的 lottie 动画,
lottie动画可以参考
接下来就可以在需要使用list view刷新的页面使用了 如下:
效果图:
ListView的基础创建使用有三种方式:
通过默认构造函数来创建列表,应用场景 = 短列表
这种方式创建的列表存在一个问题:对于那些长列表或者需要较昂贵渲染开销的子组件,即使还没有出现在屏幕中但仍然会被ListView所创建,这将是一项较大的开销,使用不当可能引起性能问题甚至卡顿。
长列表
列表子项之间需要分割线
ListView的进阶使用主要包括:下拉刷新 上拉加载
在Flutter中,ListView结合RefreshIndicator组件实现下拉刷新
通过包裹一层RefreshIndicator,自定义onRefresh回调方法实现
方式有两种:
通过ListView.controller属性可以判断ListView是否滑动到了底部,再进行上拉加载
NotificationListener是一个Widget,可监听子Widget发出的Notification
ListView在滑动时中会发出ScrollNotification类型的通知,可通过监听该通知得到ListView的滑动状态,判断是否滑动到了底部,从而进行上拉加载
NotificationListener有一个onNotification属性,定义了监听的回调方法,通过它来处理加载更多逻辑
不定期分享关于 安卓开发 的干货,追求 短、平、快 ,但 却不缺深度 。
参考文章
全局配置RefreshConfiguration,配置子树下的所有SmartRefresher表现,一般存放于MaterialApp的根部
Yalantis公司。下拉刷新是LorenBrichter发明的,他还为下拉刷新申请了专利,但他很愿意看到这个机制被其他app采用,也曾经说过申请是防御性的。
正如名字一样,EasyRefresh很容易就能在Flutter应用上实现下拉刷新以及上拉加载操作,它支持几乎所有的Flutter控件。它的功能与Android的SmartRefreshLayout很相似,同样也吸取了很多三方库的优点。EasyRefresh中集成了多种风格的Header和Footer,但是它并没有局限性,你可以很轻松的自定义。使用Flutter强大的动画,甚至随便一个简单的控件也可以完成。EasyRefresh的目标是为Flutter打造一个强大,稳定,成熟的下拉刷新框架。
flutter_easyrefresh: ^2.0.5
Pub get一下
下面我就以flutter_easyrefresh这个插件进行讲解。
[参照]{ }