안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요 아즈라엘 입니다.
이번엔 MultiTouch 관련해서 질문인데요..
다중터치 일때
ACTION_POINTER_DOWN
ACTION_POINTER_UP
를 통해서 알 수 있는데.. 문제는
동시에 3개 이상의 터치를 해도 잡아내질 못하네요..
동시에 2개터치까지 만 캐치 하던데..
event.getPointerCount() 값이 2를 넘기지를 못하고 잇습니다.
혹시 3개 이상 터치는 어떻게 할 수 있을까요?
2011.06.15 17:57:59
터치이벤트 저장할 갯수만큼 배열로 공간을 만들고 처리하는 방법이 있습니다.
MotionEvent 의 getHistorySize() 만큼 처리하게요.
물론 단말마다 좀 다릅니다.
public void addTouch(MotionEvent ev) {
long time = ev.getEventTime();
final int N = ev.getHistorySize();
for (int i=0; i<N; i++) {
addTouchPoint(ev.getHistoricalX(i), ev.getHistoricalY(i),
ev.getHistoricalEventTime(i));
}
addTouchPoint(ev.getX(), ev.getY(), time);
}




단말의 문제는 아닌가요? 멀티터치 지원 정도가 단말마다 차이가 있을텐데요...