Dart 如何在颤振中制作yoyo动画?
我知道Dart 如何在颤振中制作yoyo动画?,dart,flutter,Dart,Flutter,我知道AnimationController上有repeat()方法,但它总是从一开始就开始 是否有一种内置的方法来执行一个正向和一个反向动画,并重复该操作 谢谢您可以使用addStatusListener收听动画的状态。在动画结束时,将其反转 final AnimationController c; ... c.addStatusListener((status) { if (status == AnimationStatus.completed) { c.reverse();
AnimationController
上有repeat()
方法,但它总是从一开始就开始
是否有一种内置的方法来执行一个正向和一个反向动画,并重复该操作
谢谢您可以使用
addStatusListener
收听动画的状态。在动画结束时,将其反转
final AnimationController c;
...
c.addStatusListener((status) {
if (status == AnimationStatus.completed) {
c.reverse();
}
else if (status == AnimationStatus.dismissed) {
c.forward();
}
});
该方法支持reverse
可选命名参数,因此您可以编写
animationController.repeat(reverse: true);
这是一个现代、简单的解决方案。谢谢。最后我就是这样做的。毫无疑问,颤振框架在不断发展,因此一些难以实现且需要繁琐代码的东西(参见Remi的答案,这是前一段时间唯一的解决方案)现在只是一个命名参数。我如何重复一遍我建议你在PembaTamang打开另一个问题,一种解决方案是添加一个状态监听器并手动计算状态变化(参见Remi的答案以获取灵感),但可能有一种更优雅的方法来实现这一点,因此我建议你打开一个新问题我通过将两个动画一个向前一个反向链接来实现。无论如何,谢谢你的回复。