login-page/lib/screens/splash_screen.dart

53 lines
1.3 KiB
Dart

import 'package:flutter/material.dart';
import 'login_screen.dart';
class SplashScreen extends StatefulWidget {
const SplashScreen({super.key});
@override
State<SplashScreen> createState() => _SplashScreenState();
}
class _SplashScreenState extends State<SplashScreen> {
@override
void initState() {
super.initState();
// Wait for 3 seconds, then navigate to LoginScreen
Future.delayed(const Duration(seconds: 3), () {
// ignore: use_build_context_synchronously
Navigator.of(context).pushReplacement(
MaterialPageRoute(
builder: (context) => const LoginScreen(),
),
);
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.white,
body: Center(
child: TweenAnimationBuilder<double>(
tween: Tween(begin: 1.0, end: 1.2),
duration: const Duration(milliseconds: 700),
curve: Curves.easeInOut,
builder: (context, scale, child) {
return Transform.scale(
scale: scale,
child: child,
);
},
onEnd: () {
setState(() {});
},
child: Image.asset(
'assets/splash.png',
width: 150,
fit: BoxFit.contain,
),
),
),
);
}
}