Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dart 移除晶圆厂时,如何使其具有动画效果?_Dart_Flutter - Fatal编程技术网

Dart 移除晶圆厂时,如何使其具有动画效果?

Dart 移除晶圆厂时,如何使其具有动画效果?,dart,flutter,Dart,Flutter,我知道有一个FloatingActionButton的动画(我的意思是当晶圆厂消失时,它会变小)。 在我的情况下,我有一个这样放置的晶圆厂: Scaffold( floatingActionButton: SomeBuilder(builder: () => someCondition ? FloatingActionButton() : Container()), ... ) 在这种情况下,当someCondition更改以显示容器时,floatingaction按钮没

我知道有一个
FloatingActionButton
的动画(我的意思是当晶圆厂消失时,它会变小)。
在我的情况下,我有一个这样放置的晶圆厂:

Scaffold(
  floatingActionButton: SomeBuilder(builder:
    () => someCondition ? FloatingActionButton() : Container()),
  ...
)
在这种情况下,当
someCondition
更改以显示
容器时,
floatingaction按钮
没有动画 当导航到另一条路线时,代码中的
FloatingActionButton
会产生动画,以表示另一条路线中的另一个
FloatingActionButton
的位置和形状,这就是我知道英雄动画通常工作的方式


当用
容器替换FAB时,是否需要采取任何其他步骤使其具有动画?

当您将
floatingActionButton
设置为null或当新的根小部件具有不同的
键时,FloatingButton离开动画将播放

因此,在这种情况下播放“离开”动画的正确方法是:

floatingActionButton: someCondition ?
    SomeBuilder(
      builder: () =>
        new FloatingActionButton(),
    )
    : null

谢谢你的澄清。这个例子是无用的,因为它与我提出的用例无关,也就是说,我不改变
Scaffold
的父窗口小部件的状态。在你的例子中,这个Scaffold保存着你的
someCondition
。我只是尊重这一点,不一定,但无论如何:你认为有没有办法在不重建整个
脚手架的情况下播放动画呢?我怀疑你能做到。因为父布局取决于子布局。有一些解决方案,但我不知道您的用例。你介意再解释一下吗?