6

我在paintcode中有一个stylekit,其中一个stylekit绘图方法采用一个参数 - 有什么方法可以使用 UIView.animateWithDuration(etc..) 为该参数设置动画,以便我的视图顺利更新?

4

3 回答 3

6

您不会执行 animateWithDuration ,因为它会为您创建关键帧,这就是您对传递给 PaintCode 生成的 draw 方法的变量所做的事情。

您需要实现自定义 UIView。为自定义类创建一个属性,该属性保存绘图方法接受的参数的变量值。覆盖drawRect以调用 StyleKit 绘制方法并传入保存变量值的局部变量。

然后,您将使用 anNSTimer随着时间的推移迭代一个值,并在每次迭代时更新自定义 UIView 的属性。诀窍是当属性更新时,您需要调用self.setNeedsDisplay(swift) 或[self setNeedsDisplay:YES];(obj-c)。

这里有一篇很棒的博客文章:https ://medium.com/a-first-project-with-paintcode/animating-the-arrow-6e61104b321b

于 2015-06-25T18:44:14.977 回答
1

Paintcode 在其常见问题解答部分为您提供 3 个选项:

  • 使用 UIView 和 NSTimer 制作动画
  • 具有 CALayer 的自定义动画属性的动画
  • 具有自定义动画属性和 CALayer 委托的动画

其中一些比其他的性能更好,您可以直接从他们的网站下载示例项目(Swift 和 Objective-C)。

参考: https ://www.paintcodeapp.com/faq/animate-drawings-made-paintcode

于 2017-01-23T17:44:04.610 回答
0

我最终使用PRTween项目为我的 PaintCode 项目制作动画。你可以在这里阅读。

于 2017-03-07T21:00:21.357 回答