时间的概念

图层时间

动画的发生是需要持续一段时间的,所以计时对整个概念来说至关重要

CAMediaTiming 协议

什么是CAMediaTiming协议?

    CAMediaTiming协议定义了在一段动画内用来控制逝去时间的属性的集合, CALayer和CAAnimation都实   现了这个协议,所以时间可以被任意基于一个图层或者一段动画的类控制
CAMdeiaTiming的属性
```
    duration: 一次迭代指定的时间
    repeatCount: 动画重复的迭代次数
    repeatDuration: 让动画重复一个指定的时间
    autoreverses: 在每次间隔交替循环过程中自动回放

    beginTime : 指定了动画开始之前的延迟时间
    speed: 默认为0
    timeOffset: 只是让动画快进到某一个点
    fillMode:
    removeOnCompletion:

```
缓冲

Core Animation使用缓冲来使动画移动更平滑更自然,而不是看起来的那种机械和人工,在这一章我们将要研究如 何对你的动画控制和自定义缓冲曲线

现实生活中的任何一个物体都会在运动中加速或者减速。那么我们如何在动画中实现这种加速度呢?

一种方法是使用物理引擎来对运动物体的摩擦和动量来建模,然而这会使得计算过于复杂。我们称这种类型的方程为缓冲函数,幸运的是,Core Animation内嵌了一系列标准函数提供给我们使用

CAMediaTimingFunction类
    kCAMediaTimingFunctionLinear

    kCAMediaTimingFunctionEaseIn

    kCAMediaTimingFunctionEaseOut

    kCAMediaTimingFunctionEaseInEaseOut

    kCAMediaTimingFunctionDefault

屏幕快照 2016-01-12 下午7.09.38

注意这里都是显示动画使用的

屏幕快照 2016-01-12 下午7.14.19

自定义缓冲函数

屏幕快照 2016-01-12 下午7.19.41

CAMediaTimingFunction函数的主要原则在于它把输入的时间转换成起点和终点 之间成比例的改变

转载于:https://www.cnblogs.com/Big-Ding/p/shi-jian-de-gai-nian.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值