ios – 模仿Apple的UIViewAnimationOptionCurveEaseInOut数学方程式?

ios – 模仿Apple的UIViewAnimationOptionCurveEaseInOut数学方程式?,第1张

概述我想创建一个看起来像Apple的CurveEaseInOut一样动画的动画,这样我的应用程序看起来就一致了.问题是这个特定的动画不能使用UIView动画方法.我必须在每一帧手动 *** 纵位置.例如,我得到一个时间T,我需要输出该时间点的中心C.而不是使用线性关系(例如C = T),我希望它像Apple一样容易进出. Apple使用哪种曲线方程用于该动画选项? 我假设曲线看起来与此类似:(取自this q 我想创建一个看起来像Apple的CurveEaseInOut一样动画的动画,这样我的应用程序看起来就一致了.问题是这个特定的动画不能使用UIVIEw动画方法.我必须在每一帧手动 *** 纵位置.例如,我得到一个时间T,我需要输出该时间点的中心C.而不是使用线性关系(例如C = T),我希望它像Apple一样容易进出.

Apple使用哪种曲线方程用于该动画选项?

我假设曲线看起来与此类似:(取自this question)

如果是这种情况,看起来我应该能够用正确的常数调整Cubic Hermite spline方程并获得相同的结果.问题是Apple使用哪些常量?

解决方法 正如Carbonic AcID(H2CO3)指出的那样,问题是Apple使用的控制点.

假设它与Core Animation中的默认计时功能相同,您可以从文档中获取控制点:

kcamediatimingFunctionDefault SpecifIEs the timing function used as the default by most animations. It approximates a BézIEr timing function using the control points [(0.0,0.0),(0.25,0.1),(1.0,1.0)]. By using this constant you ensure that your animations will use the current default timing.

编辑

由于你提到了自定义动画,我非常推荐你观看Animation Custom Layer Properties presentation by Rob Napier.你可以在继续做自定义动画的同时从Core Animation中受益. (观看整个演示文稿.它有助于理解核心动画的大部分内容)

总结

以上是内存溢出为你收集整理的ios – 模仿Apple的UIViewAnimationOptionCurveEaseInOut数学方程式?全部内容,希望文章能够帮你解决ios – 模仿Apple的UIViewAnimationOptionCurveEaseInOut数学方程式?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1052709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存