GetX를 사용하면 Flutter 앱에서 화면 간 이동을 간편하게 처리할 수 있다. GetX에서 제공하는 화면 이동 메소드를 정리한다.
$ flutter pub add get
Get.to(() => const MainScreen());
Get.toNamed('/MainScreen'));
현재 화면을 제거하고 새로운 화면으로 이동
Get.off(() => const MainScreen());
Get.offNamed("/MainScreen")
모든 화면을 제거하면서 이동
Get.offAll(MainScreen());
특정 조건을 만족하는 화면까지 스택에서 화면을 제거하면서 이동
Get.until((route) => Get.currentRoute == '/home'); //홈 화면까지 제거하면서 이동
Get.offUntil(GetPageRoute(page: () => const MainScreen()), ModalRoute.withName('/profile'));
메인화면까지 이동하고 profile 화면 표시
Get.offNamedUntil('/MainScreen', ModalRoute.withName('/profile'));
다이얼로그가 닫힐때까지 화면 이동
Get.until((route) => !Get.isDialogOpen!);
Get.offNamedUntil("/home", (route) => Get.isOverlaysClosed);
void navigateScreen() {
Get.to(() => const MainScreen());
Get.toNamed("/MainScreen");
Get.off(() => const MainScreen());
Get.offAll(MainScreen());
Get.offNamed("/MainScreen")
Get.until((route) => Get.currentRoute == '/home');
Get.offUntil(
GetPageRoute(page: () => const MainScreen()), // 조건: 메인 화면까지 이동
ModalRoute.withName('/profile'), // 메인화면까지 이동 후 profile 화면 표시
);
Get.offNamedUntil('/MainScreen', ModalRoute.withName('/profile'));
// 기타
// 다이얼로그가 닫힐때까지 화면 이동
Get.until((route) => !Get.isDialogOpen!);
Get.offNamedUntil("/home", (route) => Get.isOverlaysClosed); // overlay = snackbar, dialog, bottomsheet
}