I've set a Tap Gesture Recognizer in my ViewController via the Storyboard (so all the tap in the view, will hide the keyboard if this one is showed)
The thing is that now, I have add a TableView in this View, and when I clic on a cell, the methode set with the Tap Gesture Recognizer is call, not didSelectRowAtIndexPath
.
The "funny" thing, is that if I stay on the cell for 2seconds or more, the delegate didSelectRowAtIndexPath
is called, not the TapGestureRecognizer
methode.
Could you guys explain what happen here ? where and why am I wrong ?
Your UITapGestureRecognizer
probably cancels the touch event when successfully recognizing a touch.
Try setting
tapGestureRecognizer.cancelsTouchesInView = NO;
For a more thorough read on this topic, have a look an the conceptual docs on gesture recognition .
Better way is don't use didSelectRowAtIndexpath method.
if you have to implement gestures on table view cell then create tap gesture in cellForRowAtIndexpath and using tag identify particular cell click.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.