Translate

2013년 12월 16일 월요일

[Android] Honeycomb(허니콤) 에서 Touch Event 가 동작하지 않는경우..




문제:
Android 3.0 (Honeycomb) 에서 Touch Event 가 작동하지 않는경우
(3.1, 3.2 버전에서는 동작한다.)





원인:
- OEM browser 버그로 추정.





정확한 증상:
PS. Android 3.0 의 OEM browser 에서 재현이 가능함. (Emulator 재현 가능)

- Touch Event 를 적용한 Element 가 화면에 보이지 않는경우 Event 실행이 되지 않음.
  (스크롤을 내려서 하단에 숨어있던 Element 를 위로 올리는경우)


만일 다음과 같이 Div Element 가 하단에 일부가 노출이 된다고 한다면




스크롤을 내려서 아래의 Element 가 다 보이게 화면을 구성해도
실제 Touch Event 가 발생하는 곳은 처음 보였던 부분밖에 Touch 가 되지 않는다.







해결방법:
- 별다른 해결방법이 없어서 click Event 로 처리함

PS. 단점
Emulator 에서 mouseover Event 가 실행되는 시점이 손가락으로 눌렀을 때 바로 반응을 해야 하는데 Android 3.0 에서는 손가락을 떼었을때 (click 시점)에 이벤트가 발생이 된다...ㅠㅠ





Touch Event 관련하여 다음과 같은 이슈도 있었다.
[Android Browser] 손가락으로 이동 후 떼었을 때 touchend event가 실행되지 않는경우
[Mobile][Javascript] touch Event(touchstart, touchmove, touchend) 가 작동하지 않는경우




댓글 없음 :

댓글 쓰기