UILongPressGestureRecognizer 是用来监听并捕获到用户用手指长按屏幕的某一个地方的手势事件。
我的长按手势加在一个UIImageView上,先打开手势开关
_imageQRCode.userInteractionEnabled=YES;
/*第一次创建手势识别器*/
longPressGestureRecognizer = [[UILongPressGestureRecognizer alloc]
initWithTarget:self
action:@selector(handleLongPressGestures:)];
/* numberOfTouchesRequired这个属性保存了有多少个手指点击了屏幕,因此你要确保你每次的点击手指数目是一样的,默认值是为 0. */
longPressGestureRecognizer.numberOfTouchesRequired = 1;
/* Maximum 100 pixels of movement allowed before the gesture is recognized */
/*最大100像素的运动是手势识别所允许的*/
longPressGestureRecognizer.allowableMovement = 100.0f;
/*这个参数表示,两次点击之间间隔的时间长度。*/
longPressGestureRecognizer.minimumPressDuration = 1.0;
[self.imageQRCode addGestureRecognizer:longPressGestureRecognizer];
上面有几个关于长按手势的属性,可以不做修改直接使用默认
下面是回调函数,具体在长按后想实现的事情写在这里
- (void) handleLongPressGestures:(UILongPressGestureRecognizer *)paramSender{
if ([paramSender isEqual:longPressGestureRecognizer]){
NSLog(@"receive long press");
}
}