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

查询过现有的插件,要么是仅支持同样大小的组件进行排序,要么就是动画效果不是很满意,有点死板,总有这样那样的问题,所以自己写了一个,地址如下:staggered_reorderable
version 0.0.12支持的功能:
scrollDirection:指定布局方向,支持水平和垂直。duration:拖拽时触发重排序的动画持续时间。antiShakeDuration:防抖时间,为了防止临界点时频繁触发重排序(只能解决一部分,还是会出现,后续会优化掉),默认milliseconds:100。collation:拖拽完成后的交换规则,true:交换,false:插入,默认false。children:布局的子项,需要是List<*ReorderableItem*>类型。columnNum:布局的个数,垂直布局时为每行,水平布局时为每列,默认3。spacing:间隙 ,默认5.0。canDrag:是否允许拖拽,不允许则为单纯的不规则图形瀑布流布局。forwardRedundancy:自动滚动冗余偏移量[Axis.vertical]向上; [Axis.horizontal]向左,默认40.0。backwardRedundancy:自动滚动冗余偏移量[Axis.vertical]向下; [Axis.horizontal]向右,默认40.0。scrollStep:每次自动滚动长度,默认10.0。onReorder:每次交换完会调用此方法,获取排序后的trackingNumber列表。




![[智能算法]蚁群算法原理与TSP问题示例](https://i-blog.csdnimg.cn/direct/512b50c321c94aa2b2b45cb6b43cc3d2.png)














