Я использую CABasicAnimation для поворота a UIImageView
на 90 градусов по часовой стрелке, но мне нужно, чтобы он вращался еще на 90 градусов позже от своего положения после начального поворота на 90 градусов.
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
animation.duration = 10;
animation.additive = YES;
animation.removedOnCompletion = NO;
animation.fillMode = kCAFillModeForwards;
animation.fromValue = [NSNumber numberWithFloat:DEGREES_TO_RADIANS(0)];
animation.toValue = [NSNumber numberWithFloat:DEGREES_TO_RADIANS(90)];
[_myview.layer addAnimation:animation forKey:@"90rotation"];
Использование вышеприведенного кода работает первоначально, изображение остается под углом 90 градусов. Если я снова назову это, чтобы он повернул еще на 90 градусов, анимация начнется, вернувшись на 0 и повернув на 90 градусов, а не на 90... 180 градусов.
У меня создалось впечатление, что animation.additive = YES;
приведет к тому, что дальнейшие анимации будут использовать текущее состояние в качестве отправной точки.
Любые идеи?