纺车游戏:旋转图像故障

时间:2012-02-21 09:23:00

标签: iphone ios rotation

  

可能重复:
  Can I use CGAffineTransformMakeRotation to rotate a view more than 360 degrees?

我正在尝试创建一个游戏,按下按钮旋转拨号图像,旋转代码出现问题。目标是将图像从当前位置旋转360%,即.4 * 360,将图像旋转144度。谢谢伙计们!

-(IBAction)spin:(id)sender
{

    float strenght = DEGREES_TO_RADIANS(.5 * 360);

    [UIView animateWithDuration:0.5f delay:0.0f options:UIViewAnimationCurveEaseOut animations:^
    {
        [spinner_iv setTransform:CGAffineTransformRotate([spinner_iv transform],strenght)];
    } 
    completion:^(BOOL finished) 
    {
        //done
    }];
}

2 个答案:

答案 0 :(得分:1)

使用CGAffineTransform使用“最短路径”的UIView动画,因此如果您要求顺时针旋转270度,它将逆时针旋转90度。

如果您使用CATransform3D旋转视图图层,则可以获得任意数量的旋转 - 是的,即使您在2D中旋转也可以使用此旋转。见Can I use CGAffineTransformMakeRotation to rotate a view more than 360 degrees?

答案 1 :(得分:0)

将度数转换为弧度是

Radians = Degrees *(PI / 180)