只是想知道您是否有任何提示可以识别首先是拖动(平移)手势,然后如果用户一直按住他们的手指,则另一个“按住”事件?
所以我想要的效果是常规平移事件会执行它的操作,然后当移动完成时,如果用户握住他们的手指,在短暂的延迟后,另一个事件会发生。 这个事件应该持续触发,直到手指被抬起。希望这是有道理的。
我尝试将 UIPanGestureRecognizer
与 UILongPressGestureRecognizer
结合使用,但长按事件更多的是点击、按住然后滑动。我想要相反的东西。我还尝试了一个常规的点击事件,但直到取景器从屏幕上移除后才会触发?
谢谢
最佳答案
您可能需要使用计时器或 dispatch_after 来模拟您的高级识别器。
-(void)panGesture:(UIPanGestureRecognizer *)gesture;
{
if ([gesture state] == UIGestureRecognizerStateBegan || [gesture state] == UIGestureRecognizerStateChanged) {
fireEvent = YES;
//Alternatively, use display_after
[self performSelector:@selector(fireAnotherEventIfNecessary) withObject:nil afterDelay:2];
} else {
fireEvent = NO;
}
}
-(void)fireAnotherEventIfNecessary {
if (fireEvent) {
// Fire Event
}
}
关于objective-c - 如何在平移/拖动事件后检测保持(UIGestureRecognizer/iOS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13257003/