# 페이지 트랜지션

## **커스텀**&#x20;

<figure><img src="https://2113601596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQwN4pCJIiPfU3rtbboz1%2Fuploads%2FQOBmR8ZaSyXJIArnHUfb%2F%E1%84%8F%E1%85%A5%E1%84%89%E1%85%B3%E1%84%90%E1%85%A5%E1%86%B7.gif?alt=media&#x26;token=b3f7af6f-7deb-4e07-babc-55a09934aa18" alt=""><figcaption></figcaption></figure>

```dart
context.router.navigate(CustomTransitionRoute());
```

앱에 고유한 전환 효과를 적용하려는 경우 사용되며, 애니메이션 및 페이지 이동 효과를 완전히 제어할 수 있습니다.

## **페이드 인**&#x20;

<figure><img src="https://2113601596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQwN4pCJIiPfU3rtbboz1%2Fuploads%2FY4qh5AnZlagcQ1GRfGDV%2F%E1%84%91%E1%85%A6%E1%84%8B%E1%85%B5%E1%84%83%E1%85%B3%E1%84%8B%E1%85%B5%E1%86%AB.gif?alt=media&#x26;token=912c9408-7448-411f-ae91-28cbd63507e9" alt=""><figcaption></figcaption></figure>

```dart
context.router.navigate(FadeInRoute());
```

새로운 페이지가 서서히 나타나는 효과를 제공하며, 페이지가 부드럽게 표시되는 것을 선호하는 경우에 적합합니다.

## **효과 미적용**&#x20;

<figure><img src="https://2113601596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQwN4pCJIiPfU3rtbboz1%2Fuploads%2FYyeh85XozEkndnN1aBf4%2F%E1%84%92%E1%85%AD%E1%84%80%E1%85%AA%20%E1%84%86%E1%85%B5%E1%84%8C%E1%85%A5%E1%86%A8%E1%84%8B%E1%85%AD%E1%86%BC.gif?alt=media&#x26;token=d95d5d6e-2afd-4c7a-8709-ab49df4bc7f0" alt=""><figcaption></figcaption></figure>

```dart
context.router.navigate(NoTransitionRoute());
```

특별한 효과 없이 페이지를 빠르게 전환하는 데 사용됩니다. 페이지가 갑자기 교체되는 것을 원하는 경우에 유용합니다.

## **아래에서 위로 슬라이드**

<figure><img src="https://2113601596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQwN4pCJIiPfU3rtbboz1%2Fuploads%2FZnGbHZvbFT5UKy19sXWZ%2F%E1%84%8B%E1%85%A1%E1%84%85%E1%85%A2%E1%84%8B%E1%85%A6%E1%84%89%E1%85%A5%20%E1%84%8B%E1%85%B1%E1%84%85%E1%85%A9%20%E1%84%89%E1%85%B3%E1%86%AF%E1%84%85%E1%85%A1%E1%84%8B%E1%85%B5%E1%84%83%E1%85%B3.gif?alt=media&#x26;token=d0994f03-79a0-4fe0-9bcd-2db07565b8d8" alt=""><figcaption></figcaption></figure>

```dart
context.router.navigate(SlideBottomRoute());
```

새로운 페이지가 아래에서 위로 올라오는 효과를 제공합니다. 사용자에게 페이지가 위로 슬라이드 되는 느낌을 줍니다.

## **왼쪽으로 슬라이드 with fade**

<figure><img src="https://2113601596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQwN4pCJIiPfU3rtbboz1%2Fuploads%2FS062BDf8MUwcgvOARgRW%2F%E1%84%8B%E1%85%AC%E1%86%AB%E1%84%8D%E1%85%A9%E1%86%A8%E1%84%8B%E1%85%B3%E1%84%85%E1%85%A9%20%E1%84%89%E1%85%B3%E1%86%AF%E1%84%85%E1%85%A1%E1%84%8B%E1%85%B5%E1%84%83%E1%85%B3%20with%20fade.gif?alt=media&#x26;token=0d5863da-81df-4225-a583-c006d6df68f1" alt=""><figcaption></figcaption></figure>

```dart
context.router.navigate(SlideLeftWithFadeRoute());
```

페이지가 왼쪽에서 오른쪽으로 슬라이드 되면서 동시에 페이드 아웃 효과가 적용됩니다.

## **왼쪽으로 슬라이드**&#x20;

```dart
context.router.navigate(SlideLeftRoute());
```

페이지가 왼쪽에서 오른쪽으로 슬라이드 되는 효과를 제공합니다.

## **오른쪽으로 슬라이드 with fade**&#x20;

<figure><img src="https://2113601596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQwN4pCJIiPfU3rtbboz1%2Fuploads%2FAVVuLvqlackhUU75SwZZ%2F%E1%84%8B%E1%85%A9%E1%84%85%E1%85%B3%E1%86%AB%E1%84%8B%E1%85%B3%E1%84%85%E1%85%A9%20%E1%84%89%E1%85%B3%E1%86%AF%E1%84%85%E1%85%A1%E1%84%8B%E1%85%B5%E1%84%83%E1%85%B3%20with%20fade.gif?alt=media&#x26;token=00d764a9-9154-4f2b-9bf1-d01c62fadb44" alt=""><figcaption></figcaption></figure>

```dart
context.router.navigate(SlideRightWithFadeRoute();
```

페이지가 오른쪽에서 왼쪽으로 슬라이드 되면서 동시에 페이드 아웃 효과가 적용됩니다.

## **오른쪽으로 슬라이드**&#x20;

```dart
context.router.navigate(SlideRightRoute());
```

페이지가 오른쪽에서 왼쪽으로 슬라이드 되는 효과를 제공합니다.

## **위에서 아래로 슬라이드**&#x20;

<figure><img src="https://2113601596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQwN4pCJIiPfU3rtbboz1%2Fuploads%2Fp5PVfAeUXVffeSkW41yK%2F%E1%84%8B%E1%85%B1%E1%84%8B%E1%85%A6%E1%84%89%E1%85%B3%20%E1%84%8B%E1%85%A1%E1%84%85%E1%85%A2%E1%84%85%E1%85%A9%20%E1%84%89%E1%85%B3%E1%86%AF%E1%84%85%E1%85%A1%E1%84%8B%E1%85%B5%E1%84%83%E1%85%B3.gif?alt=media&#x26;token=fc909d7c-8a5b-448a-b0b6-c16d85df1581" alt=""><figcaption></figcaption></figure>

```dart
context.router.navigate(SlideTopRoute());
```

새로운 페이지가 위에서 아래로 슬라이드 되는 효과를 제공합니다.

## **줌 인**&#x20;

```dart
context.router.navigate(SlideTopRoute());
```

페이지가 서서히 확대되는 효과를 제공합니다. 페이지가 확대되는 것을 시각적으로 보여주며 사용자의 주의를 끕니다.

## **다른 탭 페이지로 이동**

```dart
context.navigateTo(
                MainScreenRoute(
                  children: [
                    CommonTab(
                      children: [
                        CommonScreenRoute(),
                        NavigateRoute(),
                      ],
                    )
                  ],
                ),
              );
```

다른 탭 페이지로 이동하는 경우에 위와 같은 코드로, 탭 간 전환을 수행할 수 있습니다.

플러터는 다양한 페이지 트랜지션 옵션을 제공하여 앱의 내비게이션 및 화면 전환을 더욱 매끄럽게 만들 수 있습니다. 프로젝트의 요구 사항과 사용자 경험에 따라 적절한 트랜지션을 선택하여 앱 개발에 활용해보세요.
