+-

我用的是 网页浏览 来滚动浏览日程表应用中的多个月份。
这里是(简化的、相当标准的)构建方法。
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Roster"),
body: PageView.builder(
itemBuilder: (context, index) {
return RosterMonth(
month: _monthList[index].monthOfYear,
year: _monthList[index].year,
);
},
),
);
}
现在 ScrollPhysics 的 PageView 使页面在左右甩动时 "跳动"(视频),我想摆脱这种效果。
我试着创建一个自定义版本的 PageScrollPhysics但成功率有限。覆盖 minFlingVelocity 返回一个高值 (double.maxFinite 例如)确实可以去除效果,但让人感觉很不自然(因为我想它不再是一个真正的调情了)。正确的方法是什么,才能去除春秋效果(并得到像在Android中使用ViewPager一样的效果)?
1
投票
投票
看来,官方消除反弹效果的方法是使用 夹持卷轴物理学 作为物理参数。我真的不知道这是否解决了你的问题,你的感觉是不自然的。但对我来说,这正是我想要的。
PageView(
physics: ClampingScrollPhysics(),
controller: _controller,
children: [
Container(color: Colors.red),
Container(color: Colors.blue),
Container(color: Colors.green),
],
)