开发者社区> 问答> 正文

layer阴影动画问题

在一个imgaeview设置了阴影之后,现在要做一个效果,把阴影向右移动,改变layer的shadowOffset可以向右移,但如何能做出动画轨迹?求思路

展开
收起
a123456678 2016-07-27 15:27:31 1741 0
1 条回答
写回答
取消 提交回答
  • CALayer的动画比较繁杂,有几种方式:

    CATransaction
    CAAnimation
    本质上是一样的。先看CATransaction

    [CATransaction begin];
    [CATransaction setAnimationDuration:3.0];
    layer.shadowOffset = CGSizeMake(10, 10);
    [CATransaction commit];
    然后是CAAnimation,这个比较简单,可以用CABasicAnimation

    CABasicAnimation *anim = [CABasicAnimation animationWithKeyPath:@"shadowOffset"];
    anim.toValue = [NSValue valueWithCGSize:CGSizeMake(10, 10)];
    anim.duration = 3.0;
    anim.beginTime = 0;

    [self.layer addAnimation:anim forKey:@"animName"];

    2019-07-17 20:00:41
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载