【发布时间】:2020-06-30 18:46:20
【问题描述】:
我可以制作一条新路线的动画,让它通过从右向左滑动来显示,并位于我当前页面的顶部。
但是,我想为两个页面(新页面和旧页面)制作动画。目标是它们都从右向左滑动,而不仅仅是新的滑到顶部。
这是我的代码,仅用于滑动右侧的代码:
class SlideRightRoute extends PageRouteBuilder {
final Widget page;
SlideRightRoute({this.page})
: super(
pageBuilder: (
BuildContext context,
Animation<double> animation,
Animation<double> secondaryAnimation,
) =>
page,
transitionsBuilder: (
BuildContext context,
Animation<double> animation,
Animation<double> secondaryAnimation,
Widget child,
) {
var begin = Offset(1.0, 0.0);
var end = Offset.zero;
var curve = Curves.ease;
var tween = Tween(begin: begin, end: end).chain(CurveTween(curve: curve));
return SlideTransition(
position: animation.drive(tween),
child: child,
);
});
}
【问题讨论】: