[flutter] 플러터 get과 네비게이션

플러터는 사용하기 쉬운 네비게이션 관리를 위한 GetX 패키지를 제공합니다. GetX를 사용하면 간단한 구문으로 화면 전환 및 상태 관리를 효과적으로 처리할 수 있습니다. 이번에는 GetX 패키지를 사용하여 플러터 애플리케이션 내에서 네비게이션을 어떻게 구현하는지 알아보겠습니다.

목차

  1. GetX 패키지 소개
  2. 네비게이션 구현
  3. 동적 파라미터 전달
  4. 참고 자료

GetX 패키지 소개

GetX 패키지는 플러터 애플리케이션에서 상태 관리, 라우팅, 다이얼로그 관리 등을 손쉽게 처리할 수 있도록 도와주는 패키지입니다. GetX를 사용하면 컨트롤러를 사용하여 간단한 코드로 네비게이션을 구현할 수 있습니다.

import 'package:get/get.dart';

void main() {
  runApp(GetMaterialApp(
    title: 'Flutter GetX Navigation',
    initialRoute: '/home',
    getPages: [
      GetPage(name: '/home', page: () => HomeView()),
      GetPage(name: '/detail', page: () => DetailView()),
    ],
  ));
}

위의 예시에서 getPages에 각 페이지의 경로와 페이지 위젯을 등록하여 네비게이션을 처리할 수 있습니다.

네비게이션 구현

GetX를 이용하여 네비게이션을 구현할 때에는 Get.to()Get.off() 메서드를 사용합니다. Get.to()는 새로운 화면을 열 때 사용하고, Get.off()는 현재 화면을 닫을 때 사용합니다.

// 새로운 화면 열기
Get.toNamed('/detail');

// 현재 화면 닫기
Get.offNamed('/detail');

동적 파라미터 전달

경로로 파라미터를 전달할 때는 Get.parameters를 사용할 수 있습니다. 예를 들어, /detail/:id와 같이 경로를 지정하고, 해당 화면에서 Get.parameters['id']로 파라미터를 가져와 사용할 수 있습니다.

// 경로 지정
GetPage(name: '/detail/:id', page: () => DetailView())

// 파라미터 사용
String id = Get.parameters['id'];

이러한 방식으로 GetX 패키지를 활용하여 플러터 애플리케이션의 네비게이션을 보다 효과적으로 관리할 수 있습니다.

참고 자료