UIGestureRecognizer点击并删除

时间:2011-09-06 18:47:07

标签: iphone objective-c cocoa-touch uigesturerecognizer

我有UILongPressGestureRecognizer触发方法-(void)didPress。默认情况下,当前视图为UIImagedidPressUIImage从屏幕上消失。但是,只要用户长按,图像就应该从屏幕上消失。一旦用户放开了初始长按,图像就会重新出现。我已经有了处理初始长按的代码,但我不确定如何确定用户何时放弃了长时间的触摸。

1 个答案:

答案 0 :(得分:4)

你应该将UILongPressGestureRecognizer传递给你的方法并检查手势的状态,当用户将手指/手指从屏幕上移开时,它会发送一个状态为UIGestureRecognizerStateEnded

- (void)didPress:(UILongPressGestureRecognizer *)recognizer {
   if (recognizer.state == UIGestureRecognizerStateBegan) {
     NSLog(@"Started");
   }
   if (recognizer.state == UIGestureRecognizerStateEnded) {
     NSLog(@"Finished");    
   }
}

使用touchesBegan:withEvent:在UIGestureRecognizer之前已经过时了