splash.dart 905B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import 'dart:async';
  2. import 'package:farmer_client/utils/timer.dart';
  3. import 'package:flutter/widgets.dart';
  4. import 'package:get/get.dart';
  5. import 'home.dart';
  6. class SplashScreen extends StatefulWidget {
  7. @override
  8. State<StatefulWidget> createState() => SplashScreenState();
  9. }
  10. class SplashScreenState extends State<SplashScreen> {
  11. // 默认 3s
  12. int _countdown = 3;
  13. Timer? _timer;
  14. @override
  15. void initState() {
  16. super.initState();
  17. _timer = setInterval((_) {
  18. if (_countdown <= 1) {
  19. _timer?.cancel();
  20. _timer = null;
  21. Get.off(Home(), routeName: '/');
  22. }
  23. setState(() {
  24. _countdown -= 1;
  25. });
  26. }, 1000);
  27. }
  28. @override
  29. void dispose() {
  30. super.dispose();
  31. _timer?.cancel();
  32. }
  33. @override
  34. Widget build(BuildContext context) {
  35. return Text("引导页");
  36. }
  37. }