pushNamedWithAnimation method
dynamic
pushNamedWithAnimation({
- required String routeName,
- dynamic argument,
- RoutePageAnimation routePageAnimation = AirouteTransition.Slide,
- Duration duration = const Duration(milliseconds: 500),
Push with animation.
Implementation
pushNamedWithAnimation({
required String routeName,
dynamic argument,
RoutePageAnimation routePageAnimation = AirouteTransition.Slide,
Duration duration = const Duration(milliseconds: 500),
}) {
return navigator?.push(
PageRouteBuilder(
transitionDuration: duration,
settings: RouteSettings(
name: routeName,
arguments: argument,
),
pageBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation) {
//WidgetBuilder
AirouteBuilder airouteBuilder = _route[routeName]!;
Widget widget = airouteBuilder();
if (widget is AirArgumentReceiver) {
AirArgumentReceiver argumentReceiver = widget as AirArgumentReceiver;
argumentReceiver.receive(
AirArgument(
argument: argument,
routeName: routeName,
),
);
}
//Route page animation
return routePageAnimation(
context,
animation,
secondaryAnimation,
widget,
);
},
),
);
}