You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
samples/navigation_and_routing/README.md

47 lines
1.8 KiB

# Navigation and Routing sample code
Sample code for [Learning Flutter's New Navigation and Routing System][article],
an article explaining Navigator 2.0.
## Samples
**Navigator 1.0 samples**
* [nav_1/anonymous_routes.dart](lib/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](lib/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](lib/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](lib/nav_2/pages.dart) - Shows how to define a list of [Page] objects on Navigator
declaratively.
* [nav_2/router.dart](lib/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](lib/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](lib/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:
```bash
flutter run lib/nav_2/router.dart
```
[article]: https://medium.com/flutter/learning-flutters-new-navigation-and-routing-system-7c9068155ade