Im slightly confused by a method in the UIGestureRecognizerDelegate protocol. When I implement the delegate method below, I don’t seem to ever get my UITapGestureRecognizers sent to this method with their state as UIGestureRecognizerStateRecognized. They are always in the state UIGestureRecognizerStatePossible. Is this right?
Below is the test code I used to setup my Tap Gesture and my test implementation of the delegate method:
UITapGestureRecognizer *singelTap = [[UITapGestureRecognizer alloc] initWithTarget:nil action:nil];
singelTap.numberOfTapsRequired = 1;
singelTap.delegate = self;
[self.view addGestureRecognizer:singelTap];
.
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
int i = 0;
if(gestureRecognizer.state == UIGestureRecognizerStateBegan){
i=1;
}
if(gestureRecognizer.state == ..... //testing for all possible states...
return YES;
}
Found this in the documents
So I guess the touch can only ever be in the ‘possible’ state.