如何使用曲线为 NSView 设置动画
How do I animate NSView with curve
我知道如何使用 +[NSAnimationContext runAnimationGroup:completionHandler:]
为 NSView
对象设置动画,但我看不到在此类动画上设置动画曲线的方法。我看到 NSAnimation
有一个包含 NSAnimationCurve
参数的 init 方法,但我无法弄清楚如何使用此方法指定动画期间实际发生的情况。 NSAnimation
的文档真的很难理解,我找不到任何示例。因此,如果有人可以解释我如何向 NSAnimationContext
动画添加曲线或在 NSAnimation
动画中指定动画,那将非常有帮助。提前致谢!
您要查找的是timingFunction
。
您可以在 runAnimationGroup
块内设置它:
NSAnimationContext.currentContext.timingFunction = …
并使用 predefined functions 或创建您自己的控制点。
Swift 的版本:
NSAnimationContext.current.timingFunction = .init(name: .linear)
我知道如何使用 +[NSAnimationContext runAnimationGroup:completionHandler:]
为 NSView
对象设置动画,但我看不到在此类动画上设置动画曲线的方法。我看到 NSAnimation
有一个包含 NSAnimationCurve
参数的 init 方法,但我无法弄清楚如何使用此方法指定动画期间实际发生的情况。 NSAnimation
的文档真的很难理解,我找不到任何示例。因此,如果有人可以解释我如何向 NSAnimationContext
动画添加曲线或在 NSAnimation
动画中指定动画,那将非常有帮助。提前致谢!
您要查找的是timingFunction
。
您可以在 runAnimationGroup
块内设置它:
NSAnimationContext.currentContext.timingFunction = …
并使用 predefined functions 或创建您自己的控制点。
Swift
NSAnimationContext.current.timingFunction = .init(name: .linear)