I have an application which uses UITapGestureRecognizers
which seem to not work in iOS9 Beta 2.
They are successfully calling
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
NSLog(@"shouldReceiveTouch");
return YES;
}
but it doesn't hit any of the other UITapGesture delegate methods.
When I run the same application (from Xcode 7) on a device running on iOS 8, it works as expected.
Has anyone else hit this?
Here is how I initialise the UITapGestureRecognizer.
Edit
If I create the UITapGestureRecognizer in code instead of in the ViewController xib it works fine, so there's something up with the xib parsing in iOS9 or something.
_tapGesture2 = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onMainViewTap:)];
_tapGesture2.numberOfTapsRequired = 1;
_tapGesture2.delegate = self;
[self.view addGestureRecognizer:_tapGesture2];
Edit2
If I deleted the GestureRecognizer in the XIB and added it back in again using XCode 7, it also worked.
When I did this, it added <pressTypeMask key="allowedPressTypes"/>
into the xib under the UITapGestureRecognizer.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…