隐式动画、显式动画、关键帧动画

做iOS开发有些日子了,知道动画怎么去实现,但是:

  • 什么是'隐式动画'?

  • 什么是'显式动画'?

  • 什么是'关键帧动画'?

一概不知

1、隐式动画:

  • 核心动画的隐式动画模型假定所有动画图层属性的变化应该是渐进的和异步的。动态的动画场景可以在没有显式的动画图层时候实现。改变动画显示的图层的属性将会导致图层隐式把旧值动画显示为新值,虽然动画是持续的,但是设置新的目标值会导致图层从当前状态动画过度到新的目标值

    OrderSearchVC *search = [[OrderSearchVC alloc] init];
    [self.navigationController pushViewController:search animated:YES];

2、显式动画:

  • 核心动画同事提供了一个显示动画模型。该显式动画模型需要你创建一个动画对象,并设置开始值和结束的值,显示动画不会开始执行,直到你把该动画应用到某个图层上面

CABasicAnimation *opAnim = [CABasicAnimation animationWithKeyPath:@opacity];
opAnim.duration = 1.0;
opAnim.fromValue = [NSNumber numberWithFloat:0.1];
opAnim.toValue= [NSNumber numberWithFloat:1.0];
opAnim.repeatCount = 1;
[view.layer addAnimation:opAnim forKey:@animateOpacity];

3、关键帧动画:

CAKeyframeAnimation *opAnim = [CAKeyframeAnimation animationWithKeyPath:@opacity];
opAnim.duration = 6.0;
opAnim.values =[NSArray arrayWithObjects:
                            [NSNumber numberWithFloat:0.0],
                            [NSNumber numberWithFloat:0.1],
                            [NSNumber numberWithFloat:0.3],
                            [NSNumber numberWithFloat:1.0],
                            nil];
opAnim.keyTimes = [ NSArray arrayWithObjects:
                               [NSNumber numberWithFloat:0.0],
                               [NSNumber numberWithFloat:0.3],
                               [NSNumber numberWithFloat:0.6],
                               [NSNumber numberWithFloat:1.0],
                               nil];
[view.layer addAnimation:opAnim forKey:@keyAnimateOpacity];
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值