2010-12-16 3 views
0

GestureDetector를 사용하여 화면에서 제스처를 캡처 할 때 안드로이드의 화면 X-Y 좌표에 혼란 스럽습니다. 예를 들어android의 뷰 제스쳐 좌표는 무엇입니까

class TouchPadGL extends GestureDetector.SimpleOnGestureListener { 
    public boolean onScroll(MotionEvent e1, MotionEvent e2, 
          float distanceX, float distanceY) { 
     Log.i("onScroll",String.format("dsX: %s, dsY: %s",distanceX,distanceY)); 
    } 
    public boolean onFling(MotionEvent e1, MotionEvent e2, 
          float velocityX, float velocityY) { 
     Log.i("onFling",String.format("vX: %s, vY: %s",velocityX,velocityY)); 
    } 
} 

상기 onScroll 방법의 출력에 의하면, 점 (0,0)을 보였다있어이 X-도끼 왼쪽 신축성 Y-으로 뷰의 오른쪽 아래 코너에있을 도끼가 위쪽으로 뻗는다. 그러나 onFling 메서드의 출력을 검사 할 때 왼쪽 위 모서리에 (0,0)이 있고 오른쪽에 X-ax가 있고 Y 축이 아래쪽으로 늘어나는 것을 볼 수 있습니다. 왜 그렇게 될 수 있니?

android api에있는 버그입니까?

BTW, 코드가

답변

0

docs API 2.1에서 실행되는 말 :

distanceX onScroll 마지막 호출 이후 스크롤 된 X 축 방향의 거리입니다. 이것은 e1과 e2 사이의 거리가 아닙니다.

distanceY 마지막으로 onScroll을 호출 한 후 Y 축을 따라 이동 한 거리입니다. 이것은 e1과 e2 사이의 거리가 아닙니다.