Iphone 如何增量旋转UIImageView?

Iphone 如何增量旋转UIImageView?,iphone,objective-c,uiimageview,Iphone,Objective C,Uiimageview,我需要在图像中以90度旋转多次我使用以下代码 CGAffineTransform transform = CGAffineTransformMakeRotation(PI/2); shape.transform = transform; 这里的形状是我的看法 问题是每次我点击旋转按钮,它都会从原来的位置旋转,这不是我想要的。我希望它能从新位置旋转 我是iphone编程新手,如果我错过了一些非常基本的东西,我表示歉意,并提前感谢您的帮助 Kedar如果您试图设置此旋转的动画,您可能希望读取到,其

我需要在图像中以90度旋转多次我使用以下代码

CGAffineTransform transform = CGAffineTransformMakeRotation(PI/2);
shape.transform = transform;
这里的形状是我的看法

问题是每次我点击旋转按钮,它都会从原来的位置旋转,这不是我想要的。我希望它能从新位置旋转

我是iphone编程新手,如果我错过了一些非常基本的东西,我表示歉意,并提前感谢您的帮助


Kedar

如果您试图设置此旋转的动画,您可能希望读取到,其中有人试图设置视图增量旋转的动画。事实证明,使用cabasicanitions的增量变换动画比您预期的要复杂一些。首先需要从呈现层读取UIView层的当前变换,然后将其作为fromValue输入到动画中

但是,在您的情况下,似乎正在使用UIView动画块为视图的变换特性设置动画。您编写的代码只会将视图的变换设置为相同的90度旋转,而不会以增量方式将视图旋转90度。要进行增量旋转,我相信您需要以下内容:

CGAffineTransform transform = CGAffineTransformRotate(shape.transform, M_PI / 2.0f);
shape.transform = transform;

这将获取视图的当前变换,将其旋转90度,然后将结果变换应用于视图。同样,这可能会遇到与CABASICANIONS相同的问题,在这种情况下,您应该参考上面的链接答案。

谢谢。您的代码片段工作得很好。你就是那个人!很乐意帮忙。如果这确实解决了您的问题,您可能需要检查答案左侧的“已接受”标记。