A few weeks ago I encountered a strange problem when working on an iOS application that seemed really strange at first sight.
The task was simple. In the chat detail screen I had to add a voice recording button next to the message input. When the user started holding the button (
.touchDown) the voice recording should have started, releasing the button (
.touchUpInside) should have finish the recording and sliding to side (
.touchDragOutside) should have canceled the voice recording.
The message input was located in the bottom right corner of the screen when keyboard was not shown
and moved up with the keyboard
When the keyboard was visible the quick recording button worked as expected, but when the quick recording button was at the bottom of the screen there was a “lag”, a delay of about 1 second, between touching the button and the
.touchDown even firing.