Если вы понимаете, как читать события касания, вы можете проверить расстояние между началом касания и текущей позицией. Если касание заканчивается раньше минимального расстояния (ваш выбор), то вы можете считать это нажатием кнопки. Если оно длиннее, то вы можете считать это ударом.
Вы также можете использовать направленную дельту, чтобы увидеть наиболее вероятное направление (вертикальное или горизонтальное)
Хотя это и не полный ответ, я надеюсь, что это даст некоторые подсказки для улучшения вашего google-fu ...