长按视图事件

时间:2014-05-21 01:55:42

标签: ios objective-c

如何在视图中检测长按的触摸事件?例如,当按下一个视图超过5秒钟,然后用手指触摸。

UILongPressGestureRecognizer可用于固定时间按下。

我试过用:

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

但是当按下2秒钟时,将调用此功能:

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

然后它永远不会再次呼叫touchesEnded。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这是UILongPressGestureRecognizer的完美情况。本课程专为您的具体情况而设计,可按如下方式实施。

UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] 
                       initWithTarget:self action:@selector(longPressOccured:)];
longPress.minimumPressDuration = 5;
[self.window addGestureRecognizer:longPress];