• [Swift]iOS开发之UIBezierPath曲线动画


    func animation1(layerParam: CAShapeLayer){
            let animation = CABasicAnimation(keyPath: "strokeStart")
            animation.fromValue = 0
            animation.toValue = 1
            animation.duration = 2.0
            layerParam.addAnimation(animation, forKey: "")
        }
    

     这段代码可以用来实现曲线的绘制动画,fromValue和toValue分别表示动画起始点和终点,0代表startPoint,1代表endPoint,整条路径可以看成单位1,0.5之类的中间值也是可以的。别忘了把函数添加

    self.animation1(layer)
    

     

    忽略那个鼠标吧。。。。。。

    还可以写成中间向两边的效果

    func animation2(layerParam: CAShapeLayer){
            layerParam.strokeStart = 0.5
            layerParam.strokeEnd = 0.5
            
            let animation1 = CABasicAnimation(keyPath: "strokeStart")
            animation1.fromValue = 0.5
            animation1.toValue = 0
            animation1.duration = 2
            
            let animation2 = CABasicAnimation(keyPath: "strokeEnd")
            animation2.fromValue = 0.5
            animation2.toValue = 1
            animation2.duration = 2
            
            layerParam.addAnimation(animation1, forKey: "")
            layerParam.addAnimation(animation2, forKey: "")
            
        }
    

     

    配合lineWidth可以得到下面效果

    func animation3(layerParam: CAShapeLayer){
            let animation = CABasicAnimation(keyPath: "lineWidth")
            animation.fromValue = 1
            animation.toValue = 10
            animation.duration = 2
            layerParam.addAnimation(animation, forKey: "")
        }
    

     

    圆形矩形什么都可以实现。

  • 相关阅读:
    【BJOI2018】求和
    【洛谷P1613】跑路
    【NOI2001】食物链
    【NOI2002】银河英雄传说
    【POJ1456】Supermarket
    【NOIP2013】货车运输
    【CH#56C】异象石
    【POJ3417】Network
    【APIO2010】巡逻
    【CH6201】走廊泼水节
  • 原文地址:https://www.cnblogs.com/ybw123321/p/5210707.html
Copyright © 2020-2023  润新知