首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >TickerProviderStateMixin与SingleTickerProviderStateMixin的差异?

TickerProviderStateMixin与SingleTickerProviderStateMixin的差异?
EN

Stack Overflow用户
提问于 2022-09-27 02:07:40
回答 3查看 199关注 0票数 -1

当我使用AnimationController时,它需要一个vsync参数。我已经研究过了,我应该使用TickerProviderStateMixin还是SingleTickerProviderStateMixin,目前我仍然不知道它们之间有什么区别。如果你能给我一个解释的话,谢谢。参考资料:https://api.flutter.dev/flutter/widgets/SingleTickerProviderStateMixin-mixin.html https://api.flutter.dev/flutter/widgets/TickerProviderStateMixin-mixin.html

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-09-27 03:55:30

当您使用单个AnimationController时,使用SingleTickerProviderStateMixin

如果需要多个AnimationController,请使用TickerProviderStateMixin

我们需要代码片段下面的TickerProviderStateMixin,因为我们有两个AnimationController

代码语言:javascript
运行
复制
class _TrickerExampleState extends State<TrickerExample>
    with TickerProviderStateMixin {
  late AnimationController controller1;
  late Animation<double> fadeAnimation;

  late AnimationController controller2;
  late Animation<Alignment> positionAnimation;
票数 2
EN

Stack Overflow用户

发布于 2022-09-27 02:58:12

记住Ticker的主要建议:每个动画帧调用它的回调一次。这就是为什么AnimationController需要一个Ticker,这也是为什么取决于您需要的AnimationControllers数量,一个Mixin比他们说的更有效率。因此,如果您可以使用一个AnimationController创建所有动画,那么使用SingleTickerProviderStateMixin。如果您需要一个以上的AnimationController,那么使用TickerProviderStateMixin。

票数 1
EN

Stack Overflow用户

发布于 2022-09-27 02:58:15

正如文档所述,它们将提供滴答器

不同之处在于,SingleTickerProviderStateMixin提供了一个Ticker,并且MixinApplicationTickerProviderStateMixin

我想我们得知道Ticker是什么。这里有一个简短的解释:使用Flutter的动画框架,这是通过Ticker + TickerProvider实现的。

滴答是我们动画的刷新率。当我们的时钟被隐藏时,这就是我们想要暂停的。 TickerProvider通常是用SingleTickerProviderStateMixin实现的,它是Ticker和外部因素之间的绑定。

这里是关于它的完整文章:vsync/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73861656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档