secondaryAnimation属性控制旧路线如何离开的动画,不是吗?

我正在尝试使用 PageRouteBuilder 实现一个漂亮的简单淡入淡出动画,从一条导航路线到另一条导航路线。我希望当前路由完全淡出,然后在旧路由消失后,新路由应该淡入。

到目前为止,在我的 PageRouteBuilder 类中,我可以将新路由从 0 淡入到 1,但我希望旧路由先完全淡出,然后在旧路由淡出后让新路由淡入。到目前为止,在我当前的代码中,一旦新路由完成淡入,旧路由就会突然消失。

我还想强调,我不希望它们同时淡出/淡入,而是让旧路由淡出然后淡入以使新路由顺序发生。

import 'package:flutter/material.dart';

class FadePageTransition extends PageRouteBuilder {
  final Widget child;

图片[1]-secondaryAnimation属性控制旧路线如何离开的动画,不是吗?-唐朝资源网

FadePageTransition({ required this.child, }) : super( transitionDuration: const Duration(milliseconds: 600), pageBuilder: (context, animation, secondaryAnimation) => child, );

图片[2]-secondaryAnimation属性控制旧路线如何离开的动画,不是吗?-唐朝资源网

@override Widget buildTransitions(BuildContext context, Animation animation, Animation secondaryAnimation, Widget child) => FadeTransition(

图片[3]-secondaryAnimation属性控制旧路线如何离开的动画,不是吗?-唐朝资源网

opacity: animation, child: child, ); }

我知道secondaryAnimation 属性控制旧路线如何离开的动画,不是吗?但我只是不确定在这种情况下它会如何工作。

© 版权声明
THE END
喜欢就支持一下吧
点赞84 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片