routes.dart 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. import 'package:flutter/material.dart';
  2. import 'package:flutter_habit/pages/home_page.dart';
  3. import 'package:flutter_habit/pages/splash_page.dart';
  4. /// Description: routes
  5. /// Time : 08/18/2023 Friday
  6. /// Author : liuyuqi.gov@msn.cn
  7. class Routes {
  8. static const String home = "/home";
  9. static const String splash = "/splash";
  10. static MaterialPageRoute<dynamic> onGenerateRoute(RouteSettings settings) {
  11. switch (settings.name) {
  12. case splash:
  13. return MaterialPageRoute(builder: (_) => SplashPage());
  14. case home:
  15. return MaterialPageRoute(builder: (_) => HomePage());
  16. default:
  17. return MaterialPageRoute(builder: (_) => SplashPage());
  18. }
  19. }
  20. /// 路由跳转,是否返回 replace: true 为不返回
  21. static void go(context, String routeName, {bool replace = false}) {
  22. if (replace) {
  23. Navigator.pushReplacementNamed(context, routeName);
  24. // Navigator.pushAndRemoveUntil(context, newRoute, (route) => false);
  25. return;
  26. }
  27. Navigator.pushNamed(context, routeName);
  28. }
  29. }