2012-01-05 5 views
0

У меня есть Scrollview с шириной и высотой fill_parent и я реализовал SimpleOnGestureListener какScrollView не вертикальной прокрутки

scroller.setOnTouchListener(new OnTouchListener() { 
       @Override 
       public boolean onTouch(View v, MotionEvent event) { 
        gdt.onTouchEvent(event); 
        return true; 
       } 
      }); 

private class GestureListener extends SimpleOnGestureListener { 
    @Override 
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, 
      float velocityY) { 
     if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE 
       && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) { 
      btnNextQuestion.performClick(); 
      return true; // Right to left 
     } 
     return false; 
    } 
} 

и на данный момент он реагирует только на прикосновение справа налево, когда это шаг больше, чем постоянная и не реагирует на вертикальное перемещение. Что нужно изменить для ScrollView реагирует (имеет поведение по умолчанию при вертикальном перемещении, содержание прокрутки)? Кто-нибудь может мне помочь ?

ответ

1

Вы всегда возвращают true из метода onTouch() внутри OnTouchListener(), и это означает, что вы потребляли событие (сделать фактический свиток ...), так что Android не будет прокручивать вид для вас.

Чтобы Android позаботился о свитке, просто верните false из метода onTouch().

Смежные вопросы