美文网首页iOS开发基础知识
动画速度控制参数---UIViewAnimationOption

动画速度控制参数---UIViewAnimationOption

作者: SlothYP | 来源:发表于2018-11-08 22:28 被阅读0次

最近在写一个动画效果的时候,发现有个常用的参数:动画的速度控制参数,之前对它没有什么深入理解.今天突然来了兴趣,就来详细研究下它.

一.UIViewAnimationOptions是什么?

它是控制动画效果的一个选项,这里我重点研究的动画速度控制相关的内容。

首先,贴一段常用的UIView动画代码:

    [UIView animateWithDuration:1 animations:^{
        // 动画代码
    } completion:^(BOOL finished) {

    }];

此时,是不用传入options参数的, 这是完整的UIView动画的方法:

    [UIView animateWithDuration:1 delay:0 options:options animations:^{
        // 动画代码
    } completion:^(BOOL finished) {
        
    }];

这里的options就是控制动画效果的枚举类型 UIViewAnimationOptions

它有四个枚举值是跟速度控制相关的: UIViewAnimationOptionCurveEaseInOut,UIViewAnimationOptionCurveEaseIn,UIViewAnimationOptionCurveEaseOut,和UIViewAnimationOptionCurveLinear, 苹果文档对它解释如下:

UIViewAnimationOptionCurveEaseInOut
Specify an ease-in ease-out curve, which causes the animation to begin slowly, accelerate through the middle of its duration, and then slow again before completing.
UIViewAnimationOptionCurveEaseIn
An ease-in curve causes the animation to begin slowly, and then speed up as it progresses.
UIViewAnimationOptionCurveEaseOut
An ease-out curve causes the animation to begin quickly, and then slow as it completes.
UIViewAnimationOptionCurveLinear
A linear animation curve causes an animation to occur evenly over its duration.

但是仅仅通过文字描述,显然是不够直观,干脆做个动画,来个直观感受:

二.动画效果演示:

我用OC写了个demo,上面是一个UIView动画, 下面是展示动画运动距离的函数曲线:

UIViewAnimationOptionCurveEaseInOut

EaseInOut.gif

UIViewAnimationOptionCurveEaseIn

EaseIn.gif

UIViewAnimationOptionCurveEaseOut

EaseOut.gif

UIViewAnimationOptionCurveLinear

Linear.gif

三.代码

对这个小demo感兴趣的话,稍后会贴出github地址。

相关文章

  • 动画速度控制参数---UIViewAnimationOption

    最近在写一个动画效果的时候,发现有个常用的参数:动画的速度控制参数,之前对它没有什么深入理解.今天突然来了兴趣,就...

  • Unity中修改动画移动速度的方式

    一句话说明 让动画速度受系数控制,通过代码调整系数,来影响动画速度。 具体步骤 在动画控制器中的某动画状态处,在S...

  • UIViewAnimationOption常规动画属性设置

    ###常规动画属性设置(可以同时选择多个进行设置) ``` UIViewAnimationOptionLayout...

  • jQuery动画

    自定义动画 参数说明: styles: 必需,规定产生动画效果的CSS speed: 可选,规定动画的速度,默认是...

  • Unity动画综合练习

    前言:对于融合树、状态机(动画状态参数、过渡线)、角色控制器、动画控制器的综合练习 1.实例:使用动画融合树实现原...

  • iOS-动画UIViewAnimationOption类型详解

    另分享一张图片方便查阅(颜色色值):

  • Flutter Curves详解

    Curves意思是曲线控制,对动画播放速度的控制,我的理解是加速度的变化 1.linear 匀速,线性 2.dec...

  • 用属性动画实现星光四射的动画效果

    在Android中, 属性动画是非常有意思的功能, 控制参数变换动画效果. 与使用gif图片相比, 动画控件要节约...

  • CoreAnimati

    CAAnimation:核心动画的基础类,不能直接使用,负责动画运行时间、速度的控制,本身实现了CAMediaTi...

  • 增量式PID的实现

    宏定义 SetPoint设置目标参数,若是控制电机,就是目标速度。Proportion、Integral、Deri...

网友评论

    本文标题:动画速度控制参数---UIViewAnimationOption

    本文链接:https://www.haomeiwen.com/subject/klvgxqtx.html