我正在尝试将CALayer旋转到特定角度,但是一旦动画完成,图层就会跳回原来的位置。如何正确旋转图层以使其保持在最终目的地?
以下是我正在使用的代码
CABasicAnimation *rotationAnimation =[CABasicAnimation animationWithKeyPath:@"transform.rotation.z"]; //Rotate about z-axis
[rotationAnimation setFromValue:[NSNumber numberWithFloat:fromDegree]];
[rotationAnimation setToValue:[NSNumber numberWithFloat:toDegree]];
[rotationAnimation setDuration:0.2];
[rotationAnimation setRemovedOnCompletion:YES];
[rotationAnimation setFillMode:kCAFillModeForwards];
有什么建议吗?谢谢。
答案 0 :(得分:2)
好的我通过将removeOnCompletion设置为NO来修复它。
[rotationAnimation setRemovedOnCompletion:NO];
答案 1 :(得分:2)
您正在添加动画,但您没有修改实际的基础属性。创建动画后,只需将图层的transform
属性设置为包含相同的最终结果。