buildTransitions<T> method

  1. @override
Widget buildTransitions<T>(
  1. PageRoute<T> route,
  2. BuildContext context,
  3. Animation<double> animation,
  4. Animation<double> secondaryAnimation,
  5. Widget child,
)
override

Wraps the child with one or more transition widgets which define how route arrives on and leaves the screen.

Subclasses override this method to create a transition animation.

The MaterialPageRoute.buildTransitions method is an example of a method that uses this to build a transition. It looks up the current PageTransitionsTheme with Theme.of(context).pageTransitionsTheme and delegates to this method with a PageTransitionsBuilder based on the theme's ThemeData.platform.

Implementation

@override
Widget buildTransitions<T>(
  PageRoute<T> route,
  BuildContext context,
  Animation<double> animation,
  Animation<double> secondaryAnimation,
  Widget child,
) {
  final Animation<Offset> slideAnimation = Tween<Offset>(
    begin: const Offset(-1, 0),
    end: Offset.zero,
  ).animate(CurvedAnimation(parent: animation, curve: Curves.ease));
  return SlideTransition(position: slideAnimation, child: child);
}