首页 > 解决方案 > 在页面浏览中向下滚动时如何隐藏底部导航?

问题描述

当我想在向下滚动时自动隐藏底部导航并在向上滚动时显示底部导航时,我被卡住了。我已经搜索了如何实现自动隐藏,但主要问题来自页面视图,我不能将页面控制器和滚动控制器放在同一个小部件中。我也尝试使用另一个小部件包装它并放置滚动控制器,但它变成了空白。实现这个东西的最佳方法是什么?这是我使用的代码。

@override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Stack(
        children: [
          SafeArea(
              child: PageView(
            controller: pageController,
            onPageChanged: (index) {
              setState(() {
                selectedPage = index;
              });
            },
            children: [
              Center(
                child: HomePage(),
              ),
              Center(
                child: CategoryPage(),
              ),
              Center(
                child: EventPage(),
              ),
            ],
          )),
          Align(
            alignment: Alignment.bottomCenter,
            child: CustomBottomNavBar(
              selectedIndex: selectedPage,
              onTap: (index) {
                setState(() {
                  selectedPage = index;
                });
                pageController.jumpToPage(selectedPage);
              },
            ),
          )
        ],
      ),
    );
  }

标签: flutterflutter-navigationflutter-pageview

解决方案


推荐阅读