Dart 使用颤振/省道翻转和抖动瓷砖动画。。?
我正在尝试使用颤振/飞镖来实现记忆匹配游戏。 整个游戏逻辑都已经编码好了,只有动画还在等待中 当用户单击任意随机磁贴时,应发生磁贴翻转,并且在尝试匹配不匹配的磁贴时,应发生抖动动画,并且应再次翻转。页面上有一个示例,说明如何制作自定义抖动曲线。Dart 使用颤振/省道翻转和抖动瓷砖动画。。?,dart,flutter,Dart,Flutter,我正在尝试使用颤振/飞镖来实现记忆匹配游戏。 整个游戏逻辑都已经编码好了,只有动画还在等待中 当用户单击任意随机磁贴时,应发生磁贴翻转,并且在尝试匹配不匹配的磁贴时,应发生抖动动画,并且应再次翻转。页面上有一个示例,说明如何制作自定义抖动曲线。 它还详细介绍了如何使用曲线创建动画 编辑:实际上我试过这个,示例曲线导致颤振错误。 你能做的是使用这样的变换 /// create and animation controller in your init state; _controller = ne
它还详细介绍了如何使用曲线创建动画 编辑:实际上我试过这个,示例曲线导致颤振错误。 你能做的是使用这样的变换
/// create and animation controller in your init state;
_controller = new AnimationController(
vsync: this,
duration: const Duration(milliseconds: 1000),
)..addListener(()=>setState((){}));
...
///wrap your layout in a transform;
return Transform(
transform: Matrix4.translation(getTranslation()),
child:
/*your layout widget here*/,
);
///Then you can get a shake type motion like so;
Vector3 getTranslation() {
double progress = _controller.value;
double offset = sin(progress * pi * 2);
return Vector3(offset, 0.0, 0.0);
}
然后,一旦你在你的动画控制器上向前调用,你会得到一个很好的震动效果。要获得更明显的抖动,请将偏移量乘以常数。要获得更快的抖动,请将2.0更改为更高的值
公认的答案描述了翻转动画的简单解决方案