PageController
的PageView
有一个功能animateToPage
,可以定义页面滑动时的曲线效果。
Future<void> animateToPage(
int page, {
@required Duration duration,
@required Curve curve,
})
我需要将其行为与 PageView 的默认滑动过渡相匹配。
有什么帮助吗?
正如 @pskink 在评论中提到的,默认的
PageView
过渡动画依赖于用户手势所应用的物理原理。根据用户的滑动,然后将其转换为页面的过渡动画。
另一方面,
PageController
的animateToPage
依赖于持续时间设置和曲线。要模拟平滑的滑动,您可以使用前面提到的 Curves.ease
。
我知道这有点晚了,但你可以使用滚动物理来改变这一点。使用前只需定义物理弹簧属性即可。您不能使用 Curve.ease,但您可以尝试通过更改弹簧的阻尼等来模拟它。
希望有帮助!