Android探路先锋之Flutter (滑动监听+加载更多功能实现)

Android探路先锋之Flutter (滑动监听+加载更多功能实现),第1张

概述ListView官网目前只介绍了一个下拉刷新功能,但上拉加载更多貌似没有甚至监听都没找到,相信以后会有大侠陆续给出自己的方案的,就像Android一样如雨后春笋,势不可挡。 在百度谷歌上目前都没有多少相关的解决方案 即使是flutter的一手资料也只给出了动态更新的方案。 看来只能靠自己了  不废话直接上源码  核心即 所摸点长度 +滑动距离  = IistView的长度  说明到达底部 var

ListVIEw官网目前只介绍了一个下拉刷新功能,但上拉加载更多貌似没有甚至监听都没找到,相信以后会有大侠陆续给出自己的方案的,就像AndroID一样如雨后春笋,势不可挡。

在百度谷歌上目前都没有多少相关的解决方案

即使是Flutter的一手资料也只给出了动态更新的方案。

看来只能靠自己了  不废话直接上源码  核心即

所摸点长度 +滑动距离  = IIStVIEw的长度  说明到达底部

  
var scrollController = new ScrollController();double downY = 0.0lastDownY = lastListLength = ;
new Listener(                  onPointerDown: (event) {                    print("onPointerDown=====${event.down}");                    print(delta}kind}                    var position = event.position.distance"onPointerDown=====${position}                    downY = position"================onPointerDown================")                  },                  onPointerMove: (event) {                    ;//                    print("onPointerMove=====${event.position}");//                    print("onPointerMove=====${event.delta}");                    var detal = position - lastDownYif (detal > 0) {                      print("================向下移动================")                    } else {                      //所摸点长度 +滑动距离  = IIStVIEw的长度  说明到达底部                      print("================向上移动================")                      print(                          "scrollController==滑动距离=======${(position - downY)}                      var scrollExtent = scrollController.position                          .maxScrollExtent"scrollController==ListVIEw最大长度===${scrollExtent}                      print("scrollController==所摸点长度===${scrollControlleroffset}"scrollController==所摸点离屏幕距离===var result = offset +                          (position - downY).abs()"scrollController==result==$resultif (result >= scrollExtent) {                        print("scrollController====到达底部")                        lastListLength = scrollExtent                        loadMore(scrollExtent)                      }                    }                    lastDownY = position                  onPointerCancel: (event) {                    print("onPointerCancel=====${event.position}                  onPointerUp: (event) {//                    loadMore();                    print("onPointerUp=====${event.                  child: ListVIEw.builder(                    //primary: false,                    physics: const Clam@R_419_6817@ScrollPhysics()                    controller: scrollController                    itemBuilder: (BuildContext contextvar data = GankBean.fromJson(datas[index])return new NewsItemVIEw(                        data.desc                        data.urlwhopublishedAttype                      )                    }                    itemCount: datas == null ? 0 : datas.length                  )              );

Github源文件:https://github.com/goodluckforme/flutter_try/blob/master/lib/app/home/NicePage.dart

源码:Android探路先锋之Flutter Gank版本

欢迎strat哦。

@H_264_301@ 总结

以上是内存溢出为你收集整理的Android探路先锋之Flutter (滑动监听+加载更多功能实现)全部内容,希望文章能够帮你解决Android探路先锋之Flutter (滑动监听+加载更多功能实现)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1004062.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存