在Flutter中,当我们导航到新屏幕时,底部导航栏应该会消失

时间:2019-03-16 00:37:35

标签: dart flutter

大家好,假设底部导航栏中有三页A,B,c,并且按下A时有一个按钮,导航到屏幕D Im仍然可以在此处看到底部导航栏,请帮助我解决这个问题 P

2 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,我发现rootNavigator:true可以解决

Navigator.of(context,rootNavigator: true).push(...);

答案 1 :(得分:0)

将屏幕D设为StatefulWidget。 例如:

class ScreenD extends StatefulWidget {
  @override
  State createState() => new ScreenDState();
}

class ScreenDState extends State<ScreenD> {
  @override
  void initState() {
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return new Scaffold();
  }
}

将屏幕A与屏幕D标记为StatefulWidget。 然后,位于BottomNavigationBar中的屏幕A onPressed处理程序中的一个按钮:

Navigator.push(context, MaterialPageRoute(builder: (context) => ScreenD()),);

当屏幕D呈现时,它应该删除BottomNavigationBar。