int downX;
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
double screenHeight = ScreenUtils.getScreenHeight(this);
switch (ev.getAction()) {
case MotionEvent.ACTION_UP:
int upX = (int) ev.getX();
int finalX = downX - upX;
downX = 0;
Log.d("手势监听", "finalX==>" + finalX + ",范围" + screenHeight * 0.8 + ",screenHeight:" + screenHeight);
//处理和视频进度条滑动事件冲突
if (upX < screenHeight * 0.8) {
if (finalX >= 100) {
Log.d("手势监听", "手势监听 下一页");
toWatchNext();
return false;
}
if (finalX <= -100) {
Log.d("手势监听", "手势监听 上一页");
toWatchPrevious();
return false;
}
}
break;
case MotionEvent.ACTION_MOVE:
break;
case MotionEvent.ACTION_DOWN:
downX = (int) ev.getX();
break;
default:
return super.dispatchTouchEvent(ev);
}
return super.dispatchTouchEvent(ev);
}
Android简单的手势监听,上一页下一页
最新推荐文章于 2024-07-25 19:03:59 发布
本文介绍了一种基于手势监听的实现方式,通过检测屏幕上的触摸事件来判断用户的左右滑动手势,进而触发应用程序内的翻页操作。文章详细展示了如何使用MotionEvent获取用户触摸点坐标,并根据坐标变化实现翻页逻辑。
1万+

被折叠的 条评论
为什么被折叠?



