滚动
Flutter 有许多内置小组件,它们会自动滚动,还提供各种小组件,你可以自定义它们以创建特定的滚动行为。
基本滚动
许多 Flutter 小组件开箱即用支持滚动,并为你完成大部分工作。例如,SingleChildScrollView
在必要时会自动滚动其子项。其他有用的组件包括 ListView
和 GridView
。你可以在小组件目录的滚动页面上查看更多这些小组件。
无限滚动
当你的 ListView
或 GridView
中有很长的项目列表(包括无限列表)时,你可以按需构建项目,因为它们会滚动到视图中。这提供了性能更高的滚动体验。有关更多信息,请查看 ListView.builder
或 GridView.builder
。
专用可滚动小组件
以下小组件提供了更具体的滚动行为。
使用 DraggableScrollableSheet
的视频
将可滚动区域变成一个轮子!ListWheelScrollView
花哨的滚动
或许您想要实现弹性滚动,也称为滚动反弹。或者您想要实现其他动态滚动效果,例如视差滚动。或者您想要一个具有非常特定行为的滚动标题,例如缩小或消失。
您可以使用 Flutter Sliver*
类实现所有这些及更多功能。Sliver 指可滚动区域的一部分。您可以定义并插入一个 sliver 到 CustomScrollView
中,以对该区域进行更精细的控制。
有关更多信息,请查看使用 sliver 实现花哨的滚动和Sliver 类。
嵌套滚动小部件
如何在不影响滚动性能的情况下将一个滚动小部件嵌套在另一个滚动小部件内?您将 ShrinkWrap
属性设置为 true,还是使用 sliver?
查看“ShrinkWrap 与 Slivers”视频