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.

42 lines
1.1KB

  1. import 'package:farm_tpf/presentation/screens/tabbar/tabbar.dart';
  2. import 'package:flutter/material.dart';
  3. import '../presentation/screens/login/login_page.dart';
  4. import '../presentation/screens/splash/view/splash_page.dart';
  5. import 'route_name.dart';
  6. class Routes {
  7. static Route buildRoutes(RouteSettings settings) {
  8. switch (settings.name) {
  9. case RouteName.splashPage:
  10. return buildRoute(settings, SplashPage());
  11. case RouteName.login:
  12. return buildRoute(settings, LoginPage());
  13. case RouteName.home:
  14. return buildRoute(settings, TabbarScreen());
  15. default:
  16. return _errorRoute();
  17. }
  18. }
  19. static Route homeRoute(RouteSettings settings) {
  20. return buildRoutes(settings);
  21. }
  22. static Route _errorRoute() {
  23. return MaterialPageRoute(builder: (_) {
  24. return const Scaffold(
  25. body: Center(
  26. child: Text(''),
  27. ),
  28. );
  29. });
  30. }
  31. static MaterialPageRoute buildRoute(RouteSettings settings, Widget builder) {
  32. return MaterialPageRoute(
  33. settings: settings,
  34. builder: (BuildContext context) => builder,
  35. );
  36. }
  37. }