滚动

Flutter 有许多内置小组件,它们会自动滚动,还提供各种小组件,你可以自定义它们以创建特定的滚动行为。

基本滚动

许多 Flutter 小组件开箱即用支持滚动,并为你完成大部分工作。例如,SingleChildScrollView在必要时会自动滚动其子项。其他有用的组件包括 ListViewGridView。你可以在小组件目录的滚动页面上查看更多这些小组件。

无限滚动

当你的 ListViewGridView 中有很长的项目列表(包括无限列表)时,你可以按需构建项目,因为它们会滚动到视图中。这提供了性能更高的滚动体验。有关更多信息,请查看 ListView.builderGridView.builder

专用可滚动小组件

以下小组件提供了更具体的滚动行为。

使用 DraggableScrollableSheet 的视频

将可滚动区域变成一个轮子!ListWheelScrollView

花哨的滚动

或许您想要实现弹性滚动,也称为滚动反弹。或者您想要实现其他动态滚动效果,例如视差滚动。或者您想要一个具有非常特定行为的滚动标题,例如缩小或消失。

您可以使用 Flutter Sliver* 类实现所有这些及更多功能。Sliver 指可滚动区域的一部分。您可以定义并插入一个 sliver 到 CustomScrollView 中,以对该区域进行更精细的控制。

有关更多信息,请查看使用 sliver 实现花哨的滚动Sliver 类

嵌套滚动小部件

如何在不影响滚动性能的情况下将一个滚动小部件嵌套在另一个滚动小部件内?您将 ShrinkWrap 属性设置为 true,还是使用 sliver?

查看“ShrinkWrap 与 Slivers”视频