如何重现 iOS 上带有火花的 watchOS 关闭 activity 环形动画?

How to reproduce watchOS closing activity ring animation with sparks on iOS?

如何在 iOS 上最好地重现 watchOS 4 的结束 activity 响铃动画?我对旋转的闪光效果特别感兴趣。

这是我正在谈论的动画的静止帧:

并且here是它的视频。

是否可以使用 Core Animation 实现类似的功能?

我几乎可以肯定这是预渲染的动画,而不是在设备上生成的。 (如果它 在设备上生成的,那么它不是您可以 API 访问的东西。

我敢打赌:

  • 一位设计师使用 AfterEffects 等工具对其进行了处理,
  • 将其导出为一系列图像,
  • 然后开发人员使用 WKImageAnimatable
  • 之类的东西实现了它

您可以看到其他开发人员使用 WKImageAnimatable 在他们的 WatchKit 应用程序中构建华丽的动画 - 例如,Cultured Code’s app Things(观看那里的视频!)有一些非常棒的小动画效果(几乎肯定)使用WKImageAnimatable 底层!

在苏黎世科技大学的可用性实验室,我们使用:

  • sketch 或 illustrator 或 designer.gravit.io 用于设计 svg 草图。
  • 比起我们将其导入 After Effects 或 Haiku.ai 以制作动画
  • 并将其导出为 .json 用于 airbnbs animations library Bodymovin 或也称为 Lottie。因此有网络库,android 和 ios 可用。

此解决方案相对于@bryanjclark "exported it as a series of images" 的优势在于动画在每个分辨率 (svg) 中都很清晰,它只有一个 .json 文件并且您可以完全控制它速度和帧数。

否则如果你真的只想用代码来做,看看this Article, done with OpenGL ES2.0

AnimationCore example in this SO Answer.