The UITapGestureRecognizer only fires when the gesture state is UIGestureRecognizerStateEnded
If you want to use a gesture recogniser to detect the start and end of a press, use the UILongPressGestureRecognizer, with the minumumPressDuration set to 0