首页 > 解决方案 > 颤动几个选项卡,每个选项卡都有一个导航器,将路由从一个选项卡推送到另一个选项卡

问题描述

我陷入了颤抖的境地。我有两个标签,每个标签都有一个导航器。每个导航器可以显示一组页面。

在第一个选项卡上时,我想单击第一页上的链接并转到第二个选项卡并显示第三页。从标签一下的页面到标签三下的页面的有效深度链接。导航到第三页时,选项卡二应该变为活动状态。

选项卡结构

我使用标签控制器以典型方式托管标签:

child: DefaultTabController(
  length: 2,
  child: Scaffold(
    appBar: TabBar(
      tabs: const [
        Tab(text: 'HOME'),
        Tab(text: 'MENU'),
      ],
    ),
    body: TabBarView(
      children: <Widget>[
        HomeScreen(),
        MenuScreen(),
      ],
    ),
  ),
),

从带有选项卡的页面内部,我可以通过执行以下操作访问选项卡控制器:

onTap: () async {
  TabController tab = DefaultTabController.of(context);
  tab.animateTo(1);
},

但我不确定如何访问 TAB2 的导航器以推送页面以使其导航到第 3 页。

感觉好像我错过了一些简单的东西。感谢任何建议:)

标签: flutternavigator

解决方案


推荐阅读