如何在颤动中使用动画制作POP

问题描述 投票:-1回答:1

我正在做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);
          })
    ],
  ),
);

}

flutter flutter-animation
1个回答
1
投票

没有人回答,但我找到了解决方案,你可以使用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过渡到页面!

© www.soinside.com 2019 - 2024. All rights reserved.