UI 动画之CALayer+CAAnimation 之 CAKeyframeAnimation

来源:互联网 发布:淘宝累积消量是多久的 编辑:程序博客网 时间:2024/05/18 03:37

#pragma mark 关键帧动画 CAKeyframeAnimation ---按着路径走

    //keyPath需要强打并且是固定对应的。

    CAKeyframeAnimation *keyFrameAnimation = [CAKeyframeAnimationanimationWithKeyPath:@"position"];

    //第一步:准备路径

   CGPoint point_first = CGPointMake(100, 200);

   CGPoint point_second = CGPointMake(200, 100);

   CGPoint point_third = CGPointMake(300, 200);

   CGPoint point_fourth = CGPointMake(100, 100);

   CGPoint point_fifth = CGPointMake(200, 200);

   CGPoint point_sixth = CGPointMake(300, 100);

    

    //第二步:将结构体转换成对象类型,用于存放到数组中作为关键帧

   NSValue *value_first = [NSValuevalueWithCGPoint:point_first];

   NSValue *value_second = [NSValuevalueWithCGPoint:point_second];

   NSValue *value_third = [NSValuevalueWithCGPoint:point_third];

   NSValue *value_fourth = [NSValuevalueWithCGPoint:point_fourth];

   NSValue *value_fifth = [NSValuevalueWithCGPoint:point_fifth];

   NSValue *value_sixth = [NSValuevalueWithCGPoint:point_sixth];

    

    

    //第三步:把路径对象存放在数组中

    keyFrameAnimation.values =@[value_first,value_second,value_third,value_fourth,value_fifth,value_sixth];

    

   //第四步:设置动画间隔

    keyFrameAnimation.duration =4;

    

    //第五步:关键一步,把动画添加到layer

    [_customLabel1.layeraddAnimation:keyFrameAnimation forKey:@"keyFrame"];

0 0
原创粉丝点击