目标C
CAKeyframeAnimation *animation = [CAKeyframeAnimation animationWithKeyPath:@"position.x"]; animation.values = @[ @0, @10, @-10, @10, @0 ]; animation.keyTimes = @[ @0, @(1 / 6.0), @(3 / 6.0), @(5 / 6.0), @1 ]; animation.duration = 0.4; animation.additive = YES; [_label.layer addAnimation:animation forKey:@"shake"];
迅捷3
let animation = CAKeyframeAnimation(keyPath: "position.x") animation.values = [ 0, 10, -10, 10, 0 ] animation.keyTimes = [ 0, NSNumber(value: (1 / 6.0)), NSNumber(value: (3 / 6.0)), NSNumber(value: (5 / 6.0)), 1 ] animation.duration = 0.4 animation.isAdditive = true label.layer.add(animation, forKey: "shake")