使用Touch事件在imageView中进行连续触摸检测。

时间:2012-07-06 07:33:43

标签: iphone cocoa-touch uiimageview

我有一个调用另一个视图的方法。我希望在图像连续一段时间后调用此方法。

这种方法在UIButton = touchDown(),touchup()。

中找到

触摸事件中是否有任何方法可以在图像视图中找到连续触摸。

请帮助我。

提前致谢

3 个答案:

答案 0 :(得分:0)

您可以将这些事件用于UIIMAGEVIEW:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event 

答案 1 :(得分:0)

假设您想要计算触摸次数(像双击那样连续)

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [[event allTouches] anyObject];

int index =[touch view].tag;

if (touch.tapCount == number && index == imageTag) {

}

}

tapCount将是持续时间点击的计数,时间间隔非常短(双击)。如果您要观看的水龙头计数延迟较长(例如5个单击),则无法使用它。或者,你可以记住你的imageview的触摸,例如:

 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
      UITouch *touch = [[event allTouches] anyObject];
      int index =[touch view].tag;

      if(index == imagetag){
         if([tempMutableArray count] < definiteTime){
            [tempMutableArray addObject:@"any"]
           }else{ 
            [tempMutablArray removeAllObjects]; 
            //you can call the method now
            }
      }
}

答案 2 :(得分:0)

你可以使用点击手势,你可以看到我在this线程中写的答案。在这里你可以设置需要触发事件的点击次数。希望这对你有所帮助。