какова координата жеста вида на андроид - PullRequest
0 голосов
/ 16 декабря 2010

При использовании GestureDetector для захвата жестов на экране меня смущает координата XY экрана андроида.Например:

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 - вниз.Почему это могло произойти?

Это ошибка в API Android или я понимаю, что это неправильно?

Кстати, код работает на API 2.1

1 Ответ

0 голосов
/ 16 декабря 2010

документы говорят:

distanceX Расстояние по оси X, которое было прокручено с момента последнего вызова onScroll. Это НЕ расстояние между e1 и e2.

distanceY Расстояние по оси Y, которое было прокручено с момента последнего вызова onScroll. Это НЕ расстояние между e1 и e2.

...