滚动
Flutter 拥有许多内置的自动滚动的 widget,并且还提供各种可自定义的 widget 来创建特定的滚动行为。
基本滚动
#许多 Flutter widget 原生支持滚动并为您完成大部分工作。例如,SingleChildScrollView
会在必要时自动滚动其子元素。其他有用的 widget 包括 ListView
和 GridView
。您可以在 Widget 目录的滚动页面上查看更多此类 widget。
Scrollbar | Flutter widget of the week
ListView | Flutter widget of the week
无限滚动
#当您的 ListView
或 GridView
中有很长的项目列表(包括 无限 列表)时,您可以根据需要在项目滚动到视图中时构建它们。这提供了更高性能的滚动体验。有关更多信息,请查看 ListView.builder
或 GridView.builder
。
特殊的可滚动 widget
#以下 widget 提供更具体的滚动行为。
关于使用 DraggableScrollableSheet
的视频:
DraggableScrollableSheet | Flutter widget of the week
使用 ListWheelScrollView
将可滚动区域变成轮子!
ListWheelScrollView | Flutter widget of the week
花哨的滚动
#也许您想实现 弹性 滚动,也称为 滚动反弹 。或者您可能想实现其他动态滚动效果,例如视差滚动。或者您可能想要一个具有非常特定行为的可滚动标题,例如收缩或消失。
您可以使用 Flutter Sliver*
类实现所有这些以及更多功能。sliver 指的是可滚动区域的一部分。您可以定义并将 sliver 插入 CustomScrollView
以对该区域进行更精细的控制。
有关更多信息,请查看使用 sliver 实现花哨的滚动和Sliver 类。
嵌套滚动 widget
#如何在不影响滚动性能的情况下将一个滚动 widget 嵌套到另一个滚动 widget 中?您是将 ShrinkWrap
属性设置为 true,还是使用 sliver?
查看“ShrinkWrap 与 Sliver”视频:
ShrinkWrap vs Slivers | Decoding Flutter
除非另有说明,否则本网站上的文档反映的是 Flutter 的最新稳定版本。页面最后更新于 2025-01-30。 查看源代码 或 报告问题。