【发布时间】:2019-03-29 01:02:42
【问题描述】:
我想创建一个看起来像 Apple 的 CurveEaseInOut 一样的动画,以便我的应用程序看起来一致。问题是这个特定的动画不能使用 UIView animate 方法。我必须在每一帧手动操作位置。例如,我得到一个时间 T,我需要输出当时该点的中心 C。我不想使用线性关系(例如 C = T),而是希望它像 Apple 那样缓进缓出。
Apple 为该动画选项使用了哪个曲线方程?
我假设曲线看起来类似于:(取自this question)
如果是这样的话,看起来我应该能够用正确的常数调整 Cubic Hermite spline 方程并获得相同的结果。问题是 Apple 使用哪些常量?
【问题讨论】:
-
你见过this answer吗?这就是你要找的吗?
-
@DavidRönnqvist 我认为这个概念对 OP 来说很清楚。他正在寻找 Apple 默认使用的特定值。
-
@H2CO3 哦,在那种情况下...假设它们与计时函数相同: "
kCAMediaTimingFunctionDefault指定大多数动画默认使用的计时函数。它近似于贝塞尔计时函数使用控制点 [(0.0,0.0), (0.25,0.1), (0.25,0.1), (1.0,1.0)]。通过使用这个常数,您可以确保您的动画将使用当前的默认时间。 @Senseful 这就是你要找的答案吗? -
@DavidRönnqvist 我认为您应该将其发布为答案。
标签: ios math animation uiviewanimation