flutter - 全局减慢 Flutter 中的动画

标签 flutter dart flutter-animation

Flutter框架中有一个函数或方法,可以用来调整每个widget的动画/运行速度。

可能使用我认为的服务

我只是忘记了如何调用它,找不到任何描述它的资源 + 我不知道我曾经在哪里发现它。

没有真正的更多信息提供,因为这只是一个简单的一个类轮。我希望有人知道我在说什么。

最佳答案

你需要设置 timeDilation 静态属性:

import 'package:flutter/scheduler.dart' show timeDilation;
// you can also import the whole file:
// import 'package:flutter/scheduler.dart'; 

...

timeDilation = 2.0; // Will slow down animations by a factor of two

我在我的 import 中使用 show,因为它限制了对库中某些声明的导入。 在这种情况下,我只希望能够使用 scheduler.dart 中的 timeDilation,仅此而已。由于调度程序是相当低级的东西,所以不污染命名空间是有意义的。还有 hide 具有相反的效果(仅隐藏某些声明)。

您可以在应用中的任何位置进行设置,甚至在主函数中:

import 'package:flutter/scheduler.dart' show timeDilation;

void main() {
  timeDilation = 3.0;
  runApp(new MyApp());
}

或在您按下的处理程序中:

onPressed: () => timeDilation = 2.0

这是一个全局静态属性,因此您无需调用 setState 即可进行更改。

关于flutter - 全局减慢 Flutter 中的动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51116814/

相关文章:

json - Flutter,将 Firestore 文档中的 Json 解析为 map 失败

dart - 在从 api 填充列表时显示加载指示器

heroku - Aqueduct heroku部署问题

dart - 从 JSON 中获取数据并添加到 initState() 上的列表中

Flutter PageView,我可以用动画从列表中删除项目吗?

android - 圆形底部导航栏

flutter - 如何在 flutter 中更改显示日期选择器的语言

firebase - 你如何限制 FirebaseAdmob 到特定的屏幕

flutter - 使用 Flutter Provider 就意味着没有 StatefulWidgets?

flutter - 我怎样才能有一个像这样的动画SliverAppBar?