首页 > 解决方案 > 实际导航的 Flutter Navigation Drawer

问题描述

我有一个简单Scaffold的抽屉和身体。我想在抽屉中选择一个项目并让脚手架的主体导航到一个新视图。

我发现的大多数方法(像这样)只是使用有状态小部件并在点击抽屉项目时更改其状态。

但是,这完全忽略了应用程序的导航堆栈,并且按返回不会按预期返回到上一个视图。

另一方面,Navigator.of(context).push...单击项目时使用导航堆栈,但会更改整个屏幕,这也不是我想要的。

我尝试为脚手架的主体创建一个新的自定义导航器,但在NavigatorState从抽屉中访问时遇到问题。

这对我来说似乎是一个常见问题(例如,所有谷歌应用程序都以这种方式工作),我对如何正确实现这一点有点困惑。自定义导航器是正确的方法吗?有一些可用的例子吗?

标签: navigationflutterscaffold

解决方案


看来您必须仅为抽屉创建一个 Widget,并将其包含在应用程序每个屏幕的 Scaffold 中。这样,您可以使用 Navigator 保留导航堆栈,并仅在您决定的屏幕中包含抽屉。

这是我找到示例的文章。


推荐阅读