我正在做Navigator.pop操作,我希望淡出过渡到页面。我曾尝试过Fluro但并不感兴趣实施它。
这我在做什么: -
Widget build(BuildContext context) {
return Scaffold(
appBar: new AppBar(
title: new Text("Cart"),
leading: Hero(
tag: "cartIcon",
child: Icon(Icons.shopping_cart, color: Colors.yellow),
),
actions: <Widget>[
IconButton(
icon: Icon(Icons.close),
onPressed: () {
Navigator.pop(context);
})
],
),
);
}
没有人回答,但我找到了解决方案,你可以使用MaterialPageRoute类这样做
类:-
import 'package:flutter/material.dart';
class CustomNavRoute<T> extends MaterialPageRoute<T> {
CustomNavRoute({WidgetBuilder builder, RouteSettings settings})
: super(builder: builder, settings: settings);
@override
Widget buildTransitions(BuildContext context, Animation<double> animation,
Animation<double> secondaryAnimation, Widget child) {
if (settings.isInitialRoute) return child;
return new FadeTransition(opacity: animation, child: child);
}
}
并像这样打电话给这个班: -
Navigator.pushReplacement(context,CustomNavRoute(builder: (context) => IntroScreen()));
也在推动
Navigator.push(context, CustomNavRoute(builder: (context) => LoginSignup()));
这将在PUSH和POP上应用fadein过渡到页面!