Flutter Hero 动画与类似 PageView 的实现

Gen*_*ene 4 animation dart flutter

大家好,我有一个与此非常相似的问题:Flutter Hero-like conversion in PageView

我认为区别在于这个问题有更多的背景。

我们有一个带有 PageView 的水平滚动站点,我们希望为两个页面之间的图标设置动画。有点像这样:https://flutter.dev/docs/development/ui/animations/hero-animationsThing

问题是,大多数 HeroAnimations 教程都使用

Navigator.of(context).push(MaterialPageRoute<void>(
          builder: (BuildContext context) {
            return 
Run Code Online (Sandbox Code Playgroud)

您是否建议我们重建页面以使其具有此导航器推送?我认为这需要实现手势检测器,使其感觉像 PageView 以及自定义转换。

您可以在https://teamcrushing.it上查看我们的草稿

页面视图使它变得如此简单,但也许我们需要制作自己的页面视图才能获得此功能。

spk*_*ten 6

pub.dev 上有\xe2\x80\x99s 一个名为的包coast,它为页面视图提供类似英雄的动画。

\n

它本质上采用与 Flutter\xe2\x80\x99s Hero 和 HeroController 相同的方法:检测何时开始转换,在源页面和目标页面的元素树中搜索标记为动画的小部件(英雄、螃蟹),配对根据它们的标签将它们组合起来,最后在 Overlay 中创建一个条目,其位置和大小是源页面和目标页面上的条目之间的插值。

\n