[TypeScript] 제스처로 대화하기. #4 - 더블 탭 편
고라니드로
1 min read
더블 탭은 짧은 시간 내에 탭을 두 번 시행하는 것을 말합니다. 따라서 이전 편에서 다뤘던 탭 감지의 구현을 활용할 수 있습니다. 구현 함수는 아래와 같이 정의할 수 있습니다.
function onTap(callback: (e: TapEvent) => void);
TapEvent
는 가상의 유형으로, 내부적으로 필요한 정보를 넘겨주어야 합니다. 이를 활용하여 더블 탭을 감지할 수 있습니다.
let count = 0;
onTap(e => {
if(++count < 2) { return; }
// ...
});
제한 요소
탭을 감지할 때는 지연 시간과 범위를 제한했습니다. 더블 탭에서도 필요한 경우 비슷한 방법으로 해결할 수 있습니다.
if(count < 1 || currDelay > maxDelay || currDistance > maxDistance) { count = 0; }
// ...
주의할 점은 조건에 위배된 경우에 count
를 0으로 초기화할 뿐, 곧바로 반환하지 않는다는 점입니다. 이때에도 여전히 탭 횟수가 누적되어야 하기 때문입니다.
시리즈는 다음 편에서 계속됩니다. 읽어주셔서 감사합니다!
묻고 답하기
개인적인 판단에 의해 적절하다고 여겨지는 경우, 모두가 볼 수 있도록 이곳에 문답이 추가됩니다. 그렇지 않더라도 질문에 대한 답변은 별도로 이루어집니다.
0
Subscribe to my newsletter
Read articles from 고라니드로 directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by