Flutter给Navigator.pushNamed方法设置路由动画
要为Navigator.pushNamed方法设置路由动画,可以使用MaterialPageRoute的构造函数。
例如,以下代码将为名为“/second”的路由设置一个从右侧滑入的动画:
Navigator.pushNamed(
context,
'/second',
// Route settings
arguments: {'id': 1},
// Route animation
pageBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation) {
return SecondPage();
},
transitionsBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation, Widget child) {
return SlideTransition(
position: Tween<Offset>(
begin: const Offset(1, 0),
end: Offset.zero,
).animate(animation),
child: child,
);
},
);
在这个例子中,我们使用了pageBuilder参数来指定要跳转的页面,transitionsBuilder参数用于指定动画效果。在这个例子中,我们使用SlideTransition来实现从右侧滑入的效果。
原文地址: https://www.cveoy.top/t/topic/Ajv 著作权归作者所有。请勿转载和采集!