iOS开发的旋转手势是两个手指操作的这里实现了单个手指的旋转手势
<pre name="code" class="objc">- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
NSUInteger toucheNum = [[event allTouches] count];//有几个手指触摸屏幕
if ( toucheNum > 1 ) {
return;//多个手指不执行旋转
}
//self.tranformView,你想旋转的视图
if (![touch.view isEqual:self.tranformView]) {
return;
}
/**
CGRectGetHeight 返回控件本身的高度
CGRectGetMinY 返回控件顶部的坐标
CGRectGetMaxY 返回控件底部的坐标
CGRectGetMinX 返回控件左边的坐标
CGRectGetMaxX 返回控件右边的坐标
CGRectGetMidX 表示得到一个frame中心点的X坐标
CGRectGetMidY 表示得到一个frame中心点的Y坐标
*/
CGPoint center = CGPointMake(CGRectGetMidX([touch.view bounds]), CGRectGetMidY([touch.view bounds]));
CGPoint currentPoint = [touch locationInView:touch.view];//当前手指的坐标
CGPoint previousPoint = [touch previousLoc