Flutter 在flatter中定制导航路线小部件

Flutter 在flatter中定制导航路线小部件,flutter,dart,Flutter,Dart,我的小部件中有一个底部导航栏,当我想在带有导航器的一个项目中显示一个新的小部件时,它会在我的上一个小部件上显示一个新屏幕 如何用BottomNavigationBar项替换我的新小部件 主窗口小部件状态: class\u MainWidgetState扩展状态{ int _currentIndex=0; 最终列表_子项=[ HomeWidget(标题:AppConstants.appName), ExerciseWidget(标题:AppConstants.exercise), ProfileW

我的
小部件中有一个
底部导航栏
,当我想在带有
导航器
的一个项目中显示一个新的
小部件
时,它会在我的上一个
小部件
上显示一个新屏幕

如何用
BottomNavigationBar
项替换我的新小部件

主窗口小部件状态:

class\u MainWidgetState扩展状态{
int _currentIndex=0;
最终列表_子项=[
HomeWidget(标题:AppConstants.appName),
ExerciseWidget(标题:AppConstants.exercise),
ProfileWidget(标题:AppConstants.profile),
];
.
.
配置文件小部件状态:

class\u ProfileWidgetState扩展状态{
@凌驾
小部件构建(构建上下文){
返回脚手架(
appBar:appBar(
领先:IconButton(
图标:图标(图标.设置),
已按下:(){
openWidget(上下文,setingwidget());
},
),
),
);
}
ViewUtils中的openWidget

staticvoidopenwidget(BuildContext上下文,Widget小部件){
导航器.of(上下文).push(
材料路线(
生成器:(上下文)=>widget
),
);
}
我需要
Navigator
显示我的
SettingWidget
像Android中的
SupportFragmentManager
一样:
getSupportFragmentManager().beginTransaction().replace(…)

我该怎么做

更多信息

我有一个Splash小部件,它使用
pushandremoveing
ModalRoute.withName('/main');
主小部件创建带有一些项目的
BottomNavigationBar

在其中一个窗口中,我单击“设置”按钮,该按钮显示一个新的小部件,该显示与
Navigator.of(context.push)或
Navigator.of(context.pushReplacement)一起出现


它们都在我的主小部件上显示了我的新小部件,没有替换为
BottomNavigationBar

中的一个项目。你看过flutter文档中的BottomNavigationBar示例了吗?:是的,我读了
BottomNavigationBar
文档,我需要将我的一个项目
小部件
替换为另一个新项目。
 Navigator.push
在我的主窗口小部件前面创建一个新的
窗口小部件
,而不是将其替换为
底部导航栏中的一个项目
@leonardarnold您是否也查看了带有命名路线的导航?