Определить конец прокрутки в android.widget.Scroller - PullRequest
2 голосов
/ 18 марта 2019

Я хотел бы определить, когда пользователь прекращает прокрутку с помощью android.widget.Scroller на основе проверки onTouchEvent MotionEvent.ACTION_UP.Когда пользователь прокручивает один раз, он работает нормально, но когда пользователь прокручивает быстро, чтобы достичь определенной позиции, это показывает, что пользователь прокручивал много раз, хотя я хочу определить его как одну прокрутку.Как мне этого добиться?

@Override
public boolean onTouchEvent(MotionEvent event) {
    if(event.getAction() == MotionEvent.ACTION_UP) {
      if(mIsScrolling) {
        mIsScrolling = false;
        //
      }
    }
    mScaleDetector.onTouchEvent(event);
    return mGestureDetector.onTouchEvent(event);
}

1 Ответ

1 голос
/ 18 марта 2019

Вы можете сделать это с помощью простой математики

getCurrX(), getCurrY() methods returns current offset position x and y of scroller respectively

аналогично

getFinalX(), getFinalY() methods returns current offset positions x and y of scroller respectively

так

if(getCurrY() == getFinalY()) // true means you reached end of the scroller

для ссылки на документ здесь Scroller

Удачного кодирования !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...