gpt4 book ai didi

android - Android中手指离开当前 View 时如何停止接收运动事件的x,y坐标?

转载 作者:行者123 更新时间:2023-11-30 03:43:29 27 4
gpt4 key购买 nike

enter image description here

我已经在屏幕的蓝色部分设置了onTouchListener。当手指触摸它时,它只会获得 x,y 坐标。白色部分根本不做任何事情。问题在于,如果一开始手指接触到蓝色部分,当它“移出”到白色部分时,它仍然在继续获取x,y坐标。理想情况下,我希望设备在手指离开屏幕时停止检测运动事件。希望你能帮上忙。

最佳答案

最简单的解决方案是通过简单地将手指的 x、y 坐标与 View 边界矩形进行比较来检查您的手指是否正在触摸 View 。您可以通过从 dispatchTouchEvent 返回 false 来停止接收事件。

编辑:

@Override
public boolean dispatchTouchEvent(MotionEvent event) {
Rect outRect = new Rect();
getDrawingRect(outRect);
if (outRect.contains((int) event.getX(), (int) event.getY())) {
return true; // I want more events
} else {
return false; // stop events until next ACTION_DOWN on me
}
}

关于android - Android中手指离开当前 View 时如何停止接收运动事件的x,y坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15386601/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com