Flutter에서 MaterialPageRoute
는 머티리얼 디자인 스타일의 페이지 전환을 구현하기 위한 라우트 클래스입니다. MaterialPageRoute
는 iOS와 Android에서 특정한 플랫폼 별 페이지 전환 애니메이션을 제공합니다.
MaterialPageRoute
의 주요 특징은 다음과 같습니다:
플랫폼 별 애니메이션: iOS에서는 오른쪽에서 왼쪽으로 슬라이드하는 전환 애니메이션을, Android에서는 아래에서 위로 페이드 인되면서 올라오는 전환 애니메이션을 제공합니다.
커스텀 빌더 함수: MaterialPageRoute
를 생성할 때 builder
함수를 제공해야 합니다. 이 함수는 BuildContext
를 인자로 받아, 전환될 페이지의 위젯을 반환합니다.
페이지 이력 관리: MaterialPageRoute
는 라우트 스택에 추가되어, 뒤로 가기 버튼 등을 사용하여 이전 페이지로 쉽게 돌아갈 수 있게 해줍니다.
간단한 사용 예시는 다음과 같습니다:
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => NewPage(),
),
);
위의 코드는 현재의 context
를 사용하여 NewPage
라는 새로운 위젯으로 전환합니다. 이 때, MaterialPageRoute
를 사용하여 머티리얼 디자인 스타일의 페이지 전환 애니메이션을 적용합니다.
MaterialPageRoute
는 라우팅과 페이지 전환을 손쉽게 구현하기 위한 플러터의 기본 제공 클래스 중 하나입니다. 이를 사용하여 앱 내의 다양한 화면 전환을 구현할 수 있습니다.