如何在Flutter中进行缩放打开动画?

Rém*_*let 2 animation dart flutter

我正在尝试拍打动画:

https://material.io/guidelines/motion/choreography.html#choreography-creation

在此处输入图片说明

我的问题是我完全不知道该怎么做。据我所知,flutter中的小部件根本不知道它们的位置,也不知道其位置或其他小部件。而且您无法context.size在build方法内部访问。

我尝试使用Hero动画来做到这一点。或ScaleTransition。但这绝对是行不通的。

Col*_*son 5

您可以用来showMenu在给定位置动态显示弹出菜单。考虑使用PopupMenuButtonIconButton当点击它时,它会自动显示菜单。图库中有一个例子。如果showMenu不执行所需的操作,则可以将代码复制到popup_menu.dart中,然后对其进行自定义以制作自己的版本。它使用CustomSingleChildLayoutPopupRoute

如果您只想将a Material或绝对定位Card在其他元素的上方,则可以给它一些标高,并在中使用Positioneda Stack。您可以使用AnimatedSize来通过调整元素的大小Curve。这不会与Android上的后退按钮自动交互,因此,如果需要,则可能必须使用addLocalHistoryEntryPopupRoute