在Flutter

时间:2017-12-19 15:20:42

标签: dart flutter

我已经使用

通过动态路由生成在我的flutter app中实现了路由

onPressed:() => Navigator.of(context).push(new PageRouteBuilder( pageBuilder: (_, __, ___) => new Video(), )),

然而,从一个页面到另一个页面的转换是即时的,并且没有来自左侧的本地'或者从底部开始'动画,取决于你是针对iOS还是Android。有没有办法实现本机OS转换,而无需从头开始实现动画。

我知道您可以将transitionBuilder参数传递给PageRouteBuilder来创建过渡,但到目前为止,我还没有找到有关如何创建必要过渡或是否有预制过渡的信息可用。任何有关上述原生过渡的实现的帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

您可以使用MaterialPageBuilder代替PageRouteBuilder

要播放视频,您可以查看this

示例:

import 'package:chewie/chewie.dart';

final playerWidget = new Chewie(
  new VideoPlayerController(
    'https://flutter.github.io/assets-for-api-docs/videos/butterfly.mp4'
  ),
  aspectRatio: 3 / 2,
  autoPlay: true,
  looping: true,
);

 onPressed:() => Navigator.of(context).push(new MaterialPageRoute(
   pageBuilder: (BuildContext context) {
      return new Container(child: playerWidget);
   },
 )),

希望这有帮助!