Timer和AnimationController使用之间的抖动差异

问题描述 投票:0回答:1

我有动画和一个计时器。我了解到,计时器是使“第二把刻度”准确地对准第二个刻度的最佳方法。对于动画,我使用了较短的持续时间(100毫秒)的AnimationController和Timer。我想我一定会遗漏一些东西,因为我不完全了解何时应分别使用Timer和AnimationController。它们都导致setState()并因此导致Build(并因此重绘)。我想一个想法是,如果我可以保留所有屏幕,然后在动画中重新绘制一个小的更改。全面披露:我正在努力应对Flutter Clock Challenge !!

animation flutter timer redraw
1个回答
0
投票

Timer与Flutter无关,就像您可以使用其他任何语言一样,它只是一个计时器。

另一方面,AnimationController(和Ticker,其等效于Timer)是Flutter特定的。

Timer的区别在于,通过使用AnimationController,可以将“ ticker”静音,减慢或模拟。

因此,使用AnimationController有一些好处:

  • 如果关联的小部件不可见,则动画将暂停
  • 我们可以使用“慢速动画” devtool,它仅使动画慢几秒钟
  • 测试可以“模拟”这些计时器。这样,如果动画持续3秒钟,则测试可以模拟整个动画,而无需实际等待3秒钟。
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.