1
0
mirror of https://github.com/flutter/samples.git synced 2025-11-08 13:58:47 +00:00
Files
samples/navigation_and_routing
John Ryan d73beef792 Add navigator 2 samples (#606)
* add navigation_and_routing sample

* Add navigation samples and README

* remove "goals" section

* add newlines

* add copyright headers

* Update README, remove pubspec comments, add description
2020-12-11 17:27:01 -08:00
..
2020-12-11 17:27:01 -08:00
2020-12-11 17:27:01 -08:00
2020-12-11 17:27:01 -08:00
2020-12-11 17:27:01 -08:00
2020-12-11 17:27:01 -08:00
2020-12-11 17:27:01 -08:00
2020-12-11 17:27:01 -08:00
2020-12-11 17:27:01 -08:00

Navigation and Routing sample code

Sample code for Learning Flutter's New Navigation and Routing System, an article explaining Navigator 2.0.

Samples

Navigator 1.0 samples

  • nav_1/anonymous_routes.dart - Shows how to use a Navigator to push and pop anonymous routes (e.g. MaterialPageRoute)
  • nav_1/named_routes.dart - Shows how to use define named routes via the routes parameter on MaterialApp, and navigate using Navigator.pushNamed
  • nav_1/on_generate_route.dart - Shows how to handle arbitrary named routes using the onGenerateRoute callback defined in the MaterialApp constructor.

** Navigator 2.0 samples**

  • nav_2/pages.dart - Shows how to define a list of [Page] objects on Navigator declaratively.
  • nav_2/router.dart - Full sample that shows a custom RouteInformationParser and RouterDelegate parsing named routes and declaratively building the stack of pages for the Navigator.

** Advanced **

  • nav_2_advanced/nested_router.dart - Shows two [RouterDelegate], one nested within the other. A [BottomNavigationBar] can be used to select the route of the outer RouterDelegate, and additional routes can be pushed onto the inner RouterDelegate / Navigator.
  • nav_2_advanced/transition_delegate.dart - Shows how a custom TransitionDelegate can be used to customized when transition animations are shown.

Running

Each file in this project is an entrypoint. To run, specify the filename of the sample:

flutter run lib/nav_2/router.dart