【发布时间】:2013-12-24 14:23:13
【问题描述】:
我在 UIImageView 中添加了 4 个手势识别器,单击、双击和固定手势都可以正常工作。但是,长按手势不起作用。这是为什么呢?
_imageView.userInteractionEnabled = YES ;
//single tap
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc ]initWithTarget:self action:@selector(singleTapAction:) ] ;
singleTap.numberOfTapsRequired = 1 ;
singleTap.numberOfTouchesRequired = 1 ;
UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doubleTapAction:)] ;
doubleTap.numberOfTouchesRequired = 1 ;
doubleTap.numberOfTapsRequired = 2 ;
[singleTap requireGestureRecognizerToFail:doubleTap] ;
//pin gesture
UIPinchGestureRecognizer *pin = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(pinch:)] ;
//long press gesture
UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longPressAction:) ] ;
[longPress requireGestureRecognizerToFail:singleTap ] ;
longPress.minimumPressDuration = 1 ;
longPress.numberOfTouchesRequired = 1 ;
longPress.numberOfTapsRequired = 1 ;
[_imageView addGestureRecognizer:longPress] ;
[_imageView addGestureRecognizer:pin] ;
[_imageView addGestureRecognizer:singleTap] ;
[_imageView addGestureRecognizer:doubleTap] ;
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{
return YES;
}
大家好,我添加了 shouldRecognizeSimultaneouslyWithGestureRecognizer 方法并设置了长按 gesutre 委托,但这仍然不起作用。
【问题讨论】:
标签: ios objective-c uigesturerecognizer