路由router 添加动画效果
import 'package:flutter/material.dart'; class CustomeRouter extends PageRouteBuilder { final Widget widget; CustomeRouter(this.widget) : super( transitionDuration: Duration(seconds: 1), pageBuilder: (BuildContext context, Animation animation1, Animation animation2) { return widget; }, transitionsBuilder: (BuildContext context, Animation<double> animation1, Animation<double> animation2, Widget child) { return SlideTransition( position: Tween<Offset>( begin: Offset(-1.0, 0.0), end: Offset(0.0, 0.0)) .animate(CurvedAnimation( parent: animation1, curve: Curves.fastLinearToSlowEaseIn)), child: child); // return FadeTransition( // opacity: Tween(begin: 0.0, end: 1.0).animate(CurvedAnimation( // parent: animation1, curve: Curves.fastOutSlowIn)), // child: child, // ); }); }
使用
import 'custom_router.dart';
Navigator.of(context).push(CustomeRouter(secentpage()))