我正在创建一个滚动视图,该视图用一些额外的空间垂直填充该中心项目。我想完成两件事:
1- 以用户移动手指的相同速率缩小中心项目的填充。例如,如果中心项目的填充是 50 像素并且用户将手指移动了 10 像素,那么我想将填充减少到 40。
2-我想停止列表视图实际滚动,直到中心项的填充为 0。一旦中心项的填充为 0,列表视图应该正常滚动。
我在这里有点迷路了。我一直在尝试实现我自己的 ScrollController 和 ScrollPhysics,但我无法完全实现我正在寻找的东西。我还看到 Flutter 中有一个名为 ScrollPosition 的类,它控制每个滚动小部件的位置,但我无法弄清楚如何使用它们来完成我正在寻找的行为。
有人能指出我正确的方向吗?