Flutter实现不规则瀑布流布局拖拽重排序

因为业务,所以需要用flutter去实现一种不规则图形的瀑布流,但是同时需要支持拖拽并重新排序。效果类似如下。

查询过现有的插件,要么是仅支持同样大小的组件进行排序,要么就是动画效果不是很满意,有点死板,总有这样那样的问题,所以自己写了一个,地址如下:staggered_reorderable

version 0.0.12支持的功能:

  1. scrollDirection :指定布局方向,支持水平和垂直。
  2. duration :拖拽时触发重排序的动画持续时间。
  3. antiShakeDuration:防抖时间,为了防止临界点时频繁触发重排序(只能解决一部分,还是会出现,后续会优化掉 ),默认milliseconds:100
  4. collation :拖拽完成后的交换规则,true:交换,false:插入,默认false。
  5. children :布局的子项,需要是List<*ReorderableItem*> 类型。
  6. columnNum:布局的个数,垂直布局时为每行,水平布局时为每列,默认3。
  7. spacing:间隙 ,默认5.0。
  8. canDrag:是否允许拖拽,不允许则为单纯的不规则图形瀑布流布局。
  9. forwardRedundancy :自动滚动冗余偏移量[Axis.vertical]向上; [Axis.horizontal]向左,默认40.0。
  10. backwardRedundancy :自动滚动冗余偏移量[Axis.vertical]向下; [Axis.horizontal]向右,默认40.0。
  11. scrollStep:每次自动滚动长度,默认10.0。
  12. onReorder :每次交换完会调用此方法,获取排序后的trackingNumber列表。
相关推荐
九丝城主21 小时前
2025使用VM虚拟机安装配置Macos苹果系统下Flutter开发环境保姆级教程--上篇
服务器·flutter·macos·vmware
瓜子三百克1 天前
七、性能优化
flutter·性能优化
恋猫de小郭1 天前
Flutter Widget Preview 功能已合并到 master,提前在体验毛坯的预览支持
android·flutter·ios
小蜜蜂嗡嗡2 天前
Android Studio flutter项目运行、打包时间太长
android·flutter·android studio
瓜子三百克2 天前
十、高级概念
flutter
帅次2 天前
Objective-C面向对象编程:类、对象、方法详解(保姆级教程)
flutter·macos·ios·objective-c·iphone·swift·safari
小蜜蜂嗡嗡2 天前
flutter flutter_vlc_player播放视频设置循环播放失效、初始化后获取不到视频宽高
flutter
孤鸿玉2 天前
[Flutter小技巧] Row中widget高度自适应的几种方法
flutter
bawomingtian1232 天前
FlutterView 源码解析
flutter
Zender Han3 天前
Flutter 进阶:实现带圆角的 CircularProgressIndicator
flutter