1分钟
02 ScrollPhysics
首先介绍 ScrollPhysics ,在 Flutter 官方的介绍中,ScrollPhysics 的作用是 确定可滚动控件的物理特性, 常见的有以下四大金刚:
BouncingScrollPhysics:允许滚动超出边界,但之后内容会反弹回来。ClampingScrollPhysics: 防止滚动超出边界,夹住 。AlwaysScrollableScrollPhysics:始终响应用户的滚动。NeverScrollableScrollPhysics:不响应用户的滚动。
在开发过程中,一般会通过如下代码进行设置:
CustomScrollView(physics: const BouncingScrollPhysics())
ListView.builder(physics: const AlwaysScrollableScrollPhysics())
GridView.count(physics: NeverScrollableScrollPhysics())但在一般我们都不会主动去设置 physics 属性, 那么默认情况下,为什么在 Flutter 中的 ListView 、CustomScrollView 等 Scrollable 控件中,在 Android 和 iOS 平台的滚动和边界拖拽效果,会出现如下图所示的平台区别呢?
这里的关键就在于 ScrollConfiguration 和 ScrollBehavior 。
学员评价