我想检测基于onTouchEvent并检查MotionEvent.ACTION_UP的用户何时停止使用android.widget.Scroller滚动。当用户滚动一次时,它工作正常,但是当用户快速滚动以到达特定位置时,它表明用户滚动了很多次,尽管我想将其检测为一次滚动。我该如何实现?
@Override
public boolean onTouchEvent(MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_UP) {
if(mIsScrolling) {
mIsScrolling = false;
//
}
}
mScaleDetector.onTouchEvent(event);
return mGestureDetector.onTouchEvent(event);
}
答案 0 :(得分:1)
您可以通过简单的数学来实现
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
处供参考
编码愉快!