Когато използвам 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-ос се разтяга надясно, а Y-ос се разтяга надолу. защо може да се случи това?
Дали това е грешка в Android API или го приемам погрешно?
Между другото, кодът се изпълнява на API 2.1