首页 > 解决方案 > Flutter:如何让 PageView 在某个点停止(用作抽屉)?

问题描述

我正在为我的 Flutter 应用程序使用 PageView,但我刚刚意识到我不知道如何像抽屉一样在某个点停止滚动,但颤动抽屉只是覆盖了下面的页面,所以这是我想要的理想场景:

理想的综合浏览量

达到那个点后你就不能再滚动了,效果和 Instagram 的个人资料页一样 :)

这是一个普通的抽屉:

普通抽屉

标签: flutterflutter-layoutflutter-pageview

解决方案


如果要停止页面PageView而不自动捕捉到下一页或上一页,可以将参数设置pageSnappingfalse

下面是例子。

    final PageController controller = PageController(initialPage: 0);
    return PageView(
      scrollDirection: Axis.horizontal,
      pageSnapping:false,
      controller: controller,
      children: const <Widget>[
        Center(
          child: Text('First Page'),
        ),
        Center(
          child: Text('Second Page'),
        ),
        Center(
          child: Text('Third Page'),
        )
      ],
    );

推荐阅读