Я хочу постоянно вращать слой, используя byValue
, но я не могу заставить его работать правильно. Я хочу повернуть на 6 градусов каждую секунду, чтобы иметь полный оборот за 60 секунд.Вращение CALayer от начального угла
Если начальное вращение слоя равно 0, все в порядке.
Проблема в том, что я пытаюсь установить начальный fromValue
. Если я установил fromValue
на 90 градусов, анимация будет вращаться с 90 до 90 + 6, затем прыгать на 90+ (90 + 6), оживлять и снова прыгать.
Любая идея?
CABasicAnimation* animation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
animation.fromValue = [NSNumber numberWithDouble:M_PI_2];
animation.byValue = [NSNumber numberWithDouble:6.0f*M_PI/180.0f];
animation.toValue = nil;
animation.fillMode = kCAFillModeForwards;
animation.cumulative = YES;
animation.additive = NO;
animation.repeatCount = 10000;
animation.removedOnCompletion = YES;
animation.duration = 1.0;
[myLayer addAnimation:animation forKey:@"transform"];