route 활용(화면 이동)

정은하·2024년 1월 25일

Flutter

목록 보기
4/8
post-thumbnail

initialRoute: 화면 전환

main.dart

import 'package:flutter/material.dart';
import 'package:flutter_application/screen/main_screen.dart';
import 'package:flutter_application/screen/splash_screen.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      //initialRoute: 화면 전환
      initialRoute: '/',
      routes: {
        '/':(context) => SplashScreen(),
        '/main': (context)=>MainScreen(),
      },
    );
  }
}

splash_screen.dart

import 'package:flutter/material.dart';
//시작 화면
class SplashScreen extends StatelessWidget {
  const SplashScreen({super.key});

  @override
  Widget build(BuildContext context) {
    Future.delayed(Duration(seconds: 3),(){
    Navigator.pushNamed(context, '/main');
    },);
    return Scaffold(
      body: Center(
        child: Text('시작 화면 입니다.')
        ,
        ),);
  }
}

main_screen.dart

import 'package:flutter/material.dart';

class MainScreen extends StatefulWidget {
  const MainScreen({super.key});

  @override
  State<MainScreen> createState() => _MainScreenState();
}

class _MainScreenState extends State<MainScreen> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Text('메인 화면 입니다.')
        ,
        ),);
  }
}


profile
If you remain stagnant, you won't achieve anything

0개의 댓글