在我的Android应用程序中,我有一个线性布局。在其中,有一个包含多行文本视图的滚动视图。
我尝试添加一个GestureListener来添加从左向右移动以将滚动视图滚动到下一页的功能,但我发现GestureListener无法捕获翻转动作。
如何实施上述行为?感谢
答案 0 :(得分:0)
您必须使用OnTouchListener
代替。它不是很好,但确实有效。这是我之前做的一个:
scrollView.setOnTouchListener(new OnTouchListener() {
private float mDownX;
private float mDownY;
private boolean mDown = false;
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
mDownX = event.getX();
mDownY = event.getY();
mDown = true;
return false;
case MotionEvent.ACTION_MOVE:
if (!mDown) {
mDownX = event.getX();
mDownY = event.getY();
mDown = true;
}
return false;
case MotionEvent.ACTION_UP:
if (!mDown)
return false;
mDown = false;
float upX = event.getX();
float upY = event.getY();
if (Math.abs(upY - mDownY) > SWIPE_MAX_OFF_PATH
|| Math.abs(upX - mDownX) < SWIPE_MIN_DISTANCE)
return false;
int position1 = position;
if (upX > mDownX)
// left to right swipe
else
// right to left swipe
return false;
default:
return false;
}
}
});