Flutter 颤振导航到其他页面中的特定选项卡

Flutter 颤振导航到其他页面中的特定选项卡,flutter,dart,Flutter,Dart,我试图从一个页面导航到另一个页面,并设置选项卡栏的索引 这是我在第一页的代码: GestureDetector( onTap: () { Navigator.push( context, MaterialPageRoute(builder: (context) => ProductPage()), ); }, child: Container( color: Colors.blueGrey, )), 在另一页(ProductPage)中: 现在它总是打开第一个选项卡,但我希望它打开第二个

我试图从一个页面导航到另一个页面,并设置选项卡栏的索引

这是我在第一页的代码:

GestureDetector(
onTap: () { Navigator.push(
context,
MaterialPageRoute(builder: (context) => ProductPage()),
); },
child: Container(
color: Colors.blueGrey,
)),
在另一页(ProductPage)中:

现在它总是打开第一个选项卡,但我希望它打开第二个选项卡

我试过这个:

MaterialPageRoute(builder: (context) => ProductPage(SecondTab)),

但它不起作用。如何解决此问题?

您可以将索引作为参数传递,然后在defaultTabController的initialindex中使用它

试着这样做:

手势检测器(
onTap:(){Navigator.push(上下文,
MaterialPage路由(生成器:(上下文)=>ProductPage(0));
},
子:容器(颜色:颜色。蓝灰色)
)
在另一页(ProductPage)中:

class ProductPage扩展了无状态小部件{
int-selectedPage;
ProductPage(此.selectedPage);
@凌驾
小部件构建(构建上下文){
返回DefaultTabController(
initialIndex:selectedPage,
长度:3,
孩子:脚手架(
appBar:appBar(
背景颜色:颜色。来自RGBO(65102,60,1),
),
底部:选项卡栏(
isScrollable:是的,
指示颜色:颜色。白色,
选项卡:[
选项卡(图标:文本('First')),
选项卡(图标:文本('Second')),
选项卡(图标:文本('Third')),
],
),
正文:选项卡视图(
儿童:[
FirstTab(),
第二个选项卡(),
第三个标签(),
],
),
),
);
}
}
现在您可以将0、1或2作为选定索引传递

MaterialPageRoute(builder: (context) => ProductPage(SecondTab)),