识别触摸移动的方向

时间:2013-04-01 12:36:08

标签: ios objective-c touch

我正在进行视图调整大小,单触移动和旋转。

我试图找到触摸移动的方向,

如果触摸移动方向为水平或垂直,则移动视图。 如果触摸移动方向是对角线,则调整大小。 如果触摸移动像旋转手势那么旋转视图。

我可以识别水平或垂直方向。

请建议我如何识别对角线和旋转。

3 个答案:

答案 0 :(得分:1)

我想旋转,你可以简单地使用这个方法-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event

对于对角线,您可以比较两个点的坐标。 对于对角线,您也可以从此post获得帮助。

答案 1 :(得分:1)

试试这个:

TDResizerView

此视图中的视图旋转和移动都可用

答案 2 :(得分:1)

触摸移动功能,你可以像这样识别移动手指的方向。

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
  [super touchesMoved:touches withEvent:event]; 
   UITouch *touch = [touches anyObject];
   CGPoint current=[touch locationInView:self];
   CGPoint last=[touch previousLocationInView:self];

   if(current.x>last.x){
      NSLog(@">>>>rigth");
   }else{
     NSLog(@">>>>left");
   }

   if(current.y>last.y){
    NSLog(@">>>>up");
   }else{
    NSLog(@">>>>down");
   }   
}