Размер истории OnTouch всегда 0 - PullRequest
2 голосов
/ 25 марта 2012

Я пытаюсь сделать простое распознавание направления в onTouchListener на мой взгляд, но event.getHistorySize () возвращает 0 или иногда, но редко 1 или 2. Вообще говоря, истории нет, поэтому я не могу выполнить распознавание

    ll3.setOnTouchListener(new OnTouchListener() {
        @Override
        public boolean onTouch(View arg0, MotionEvent arg1) {
                if (arg1.getHistorySize() > 0) {
                    int prev = (int) arg1.getHistoricalY((arg1
                            .getHistorySize() - 1));
                    if (arg1.getY() > prev) { 

Кто-нибудь знает, где проблема?

1 Ответ

1 голос
/ 25 марта 2012

Вы можете сделать что-то подобное, если у вас нет веских причин для просмотра каждого значения, которое выводит датчик.(Значения, выводимые между кадрами, могут быть менее важны?)

ll3.setOnTouchListener(new OnTouchListener() {
    @Override
    int prevY=0;
    public boolean onTouch(View arg0, MotionEvent arg1) {
            if (arg1.getY() > prevY) { 
               // do stuff
            }
            prevY = arg1.getY();
...