touch event 다루기

12
Touch Event 다다다

Upload: lee-jong-chan

Post on 16-Apr-2017

185 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Touch event 다루기

Touch Event 다루기

Page 2: Touch event 다루기

•onClick•onLongClick•onTouch

Touch Event

Page 3: Touch event 다루기

onClick 과 onLongClick 동시 처리 방법 1 – 각각의 리스너를 이용

onClick 메소드와 onLongClick 메소드에 차이점이 존재 ?!

LongClick 에는 리턴 값이 존재한다 .

Page 4: Touch event 다루기

LongClick 의 리턴값이False 일 때는 LongClick 이후의 이벤트 처리를 계속함True 일 때는 LongClick 이후의 이벤트 처리를 하지 않음

onClick 과 onLongClick 동시 처리 방법 1 – 각각의 리스너를 이용

Page 5: Touch event 다루기

onClick 과 onLongClick 동시 처리 방법 2 – onTouchListener 를 이용

매개변수로 들어오는 MotionEvent 객체를 통해 터치 이벤트를 처리한다 .

Page 6: Touch event 다루기

onClick 과 onLongClick 동시 처리 방법 2 – onTouchListener 를 이용

MotionEvent 에는 여러가지 Action 상수들이 있다 .그 중 대표적인 3 가지1. Action_Down - 해당 뷰가 눌렸을 때2. Action_Move - 눌린 상태에서 움직였을 때3. Action_Up – 손가락이 떨어졌을 때이들을 활용하여 여러가지 터치 이벤트를 처리할 수 있다 .

Page 7: Touch event 다루기

onTouch 를 이용한 이벤트 처리 – click 과 longClick 처리

앞서 해봤던 일반 클릭과 롱클릭을 onTouch 를 이용하여 처리해보자 .

Action_Down 이 호출 될 때 현재 시간을 저장하고Action_Up 이 호출 될 때 현재 시간을 저장하여두 시간의 차이를 이용하여 click 과 LongClick 을 구분한다 .

Page 8: Touch event 다루기

onTouch 를 이용한 이벤트 처리 – click 과 longClick 처리

Down 이 불렸을 때 시간을 저장

Up 이 불렸을 때 시간을 저장두 시간의 차이를 이용하여 롱클릭과 일반 클릭을 구분한다 .

Page 9: Touch event 다루기

onTouch 를 이용한 이벤트 처리 – click 과 longClick 처리

주 의 할 점시간을 저장하는 데 사용하는 변수는 onTouch 밖으로 빼놓는다 .

Page 10: Touch event 다루기

onTouch 를 이용한 이벤트 처리 – 스와이프 애니메이션 적용스와이프 (swipe) 란 ?

슬라이드라고 표현하기도 하며 손가락을 가로축으로 움직여서 특정 뷰나 버튼을 나타나게 하는 것을 말한다 .

Page 11: Touch event 다루기

onTouch 를 이용한 이벤트 처리 – 스와이프 애니메이션 적용

스와이프에 사용할 간단한 애니메이션 코드

Page 12: Touch event 다루기

onTouch 를 이용한 이벤트 처리 – 스와이프 애니메이션 적용스와이프를 처리하기 위해서는 손가락의 수평 좌표가 필요하다 .

Down 이 불렸을 때 X 위치를 저장Move 가 불렸을 때 X 위치를 저장