导航与路由(Navigator & Route)

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

在应用里一般会用整个屏幕展示应用里的内容,我们可以说一个屏幕或者一个页面,在 Flutter 里面,这种显示内容用的屏幕或者页面叫做 route,就是路由,也就是一个屏幕或者页面可以看成是一个路由。Flutter 在管理这些路由的时候会用到一种叫 Navigator 的小部件。

Navigator 会用堆的方式来管理这些路由,堆就是 stack,在一堆路由里面,最后一个路由就是当前在设备的屏幕上要显示的东西。Navigator 提供了两种管理这些路由的方式,一种叫  imperative ,命令式,还有一种是 declarative,声明式。

使用 imperative 这种方式管理路由的话可以使用 Navigator 提供的 push 还有 pop 方法,往它管理的这堆路由里面添加或者删除路由。如果使用 declarative 的方式管理路由,可以使用 Navigator.pages 声明一组页面。

这个 Navigator 小部件一般我们不用自己创建,如果在应用里使用了 WidgetsApp 或者 MaterialApp,它们都会给我们创建一个 Navigator 小部件。

这里我们可以先打开命令面板,搜索一下 Dart Open DevTools, 执行一下在浏览器上打开开发者工具。 在这个开发者工具这里可以检查应用的小部件树,我们在应用里使用了一个 MaterialApp 小部件,选中这个小部件,然后打开右侧的这个 Details Tree,查看一下这个小部件的细节。

这个 MaterialApp 小部件里包装了很多东西,仔细寻找的话,在这里我们可以找到一个 Navigator 小部件。

导航与路由(Navigator & Route)《 Flutter 2:路由导航(一) 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点