我为UIImageView
实施了一个旋转手势。
以下是我实施的代码:
- (IBAction)rotaehandler:(UIRotationGestureRecognizer *)sender
{
sender.view.transform = CGAffineTransformRotate(sender.view.transform, sender.rotation);
}
我已将UIRotationGestureRecognizer
与UIImageView
联系起来。
它的工作原理但是,如何将图像旋转到其中心。
答案 0 :(得分:1)
CGFloat initialRotation = atan2f(sender.view.transform.b-somefloat, sender.view.transform.a-somefloat);
CGFloat newRotation = initialRotation + sender.rotation;
sender.view.transform = CGAffineTransformMakeRotation(newRotation);
尝试上面的代码
答案 1 :(得分:-1)
试试这个:
- (IBAction)rotaehandler:(UIRotationGestureRecognizer *)sender
{
if ([sender state] == UIGestureRecognizerStateBegan || [sender state] ==
UIGestureRecognizerStateChanged)
{
[sender view].transform = CGAffineTransformRotate([[sender view] transform],
[sender rotation]);
NSLog(@"Rotate : %f",[gestureRecognizer rotation]);
[sender setRotation:0];
}
}