美文网首页
Flutter 创建透明的路由页面

Flutter 创建透明的路由页面

作者: 遥远不是北_ | 来源:发表于2019-12-18 11:09 被阅读0次
import 'package:flutter/material.dart';

class SimpleRoute extends PageRoute {
  SimpleRoute({
    @required this.name,
    @required this.title,
    @required this.builder,
  }) : super(
    settings: RouteSettings(name: name),
  );

  final String title;
  final String name;
  final WidgetBuilder builder;

  @override
  String get barrierLabel => null;

  @override
  bool get opaque => false;

  @override
  bool get maintainState => true;

  @override
  Duration get transitionDuration => Duration(milliseconds: 0);

  @override
  Widget buildPage(BuildContext context,
      Animation<double> animation,
      Animation<double> secondaryAnimation,) {
    return Title(
      title: title,
      color: Theme
          .of(context)
          .primaryColor,
      child: builder(context),
    );
  }

  /// 页面切换动画
  @override
  Widget buildTransitions(BuildContext context,
      Animation<double> animation,
      Animation<double> secondaryAnimation,
      Widget child,) {
    return FadeTransition(
      opacity: animation,
      child: child,
    );
  }

  @override
  Color get barrierColor => null;
}

相关文章

网友评论

      本文标题:Flutter 创建透明的路由页面

      本文链接:https://www.haomeiwen.com/subject/ucgynctx.html