Smi*_*key 8 iphone core-animation core-graphics objective-c rotation
我正在制作一个钟摆,它从0度摆动到最大200度,然后再回来.问题是,如果钟摆超过180度,它将通过最短路径返回到0,顺时针方向继续.而且我希望它逆时针走.这是我的代码:('right'是一个布尔值,当钟摆从左向右摆动时为TRUE)
- (void)swingPendulum {
CABasicAnimation *rotationAnimation;
rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
if (right)
rotationAnimation.toValue = [NSNumber numberWithFloat:degreesToRadians(kMax)];
else
rotationAnimation.toValue = [NSNumber numberWithFloat:degreesToRadians(kMin)];
rotationAnimation.duration = 1.0;
rotationAnimation.repeatCount = 1.0;
rotationAnimation.delegate = self;
rotationAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];
rotationAnimation.removedOnCompletion = NO;
[pendulum.layer addAnimation:rotationAnimation forKey:@"rotationAnimation"];
}
Run Code Online (Sandbox Code Playgroud)
我有什么想法可以使这项工作?这是我的摇摆仪拼图的最后一块,否则它很棒:D谢谢!
迈克尔
为了让它逆时针走,只需x
在你想要的地方设置一个负值(加前面)
rotationAnimation.toValue = [NSNumber numberWithFloat:degreesToRadians(x)];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8590 次 |
最近记录: |