【发布时间】:2015-02-18 14:06:12
【问题描述】:
我面临的问题是,在触发 ACTION_POINTER_UP 时,我需要获取最近剩余手指的坐标。
以这个例子(使用 2 个指针):
- 将拇指放在屏幕上 (ID0)
- 将食指放在屏幕上 (ID1)
- 从屏幕上抬起拇指 (ID0)
- 剩余的指针是食指 (ID1)
- 获取食指坐标 (ID1)
现在,在我的 ACTION_POINTER_UP 案例中,我有以下内容:
case MotionEvent.ACTION_POINTER_UP: {
y = event.getY();
x = event.getX();
break;
}
显然,这并没有多大用处,因为(据我所知),它记录了离开屏幕的指针的 x 和 y,这不是我需要的.
上面的例子只使用了 2 个指针,但同样的问题可以应用于 3、4 或 5 个指针。
- 将拇指放在屏幕上 (ID0)
- 将食指放在屏幕上 (ID1)
- 将中指放在屏幕上 (ID2)
- 将无名指放在屏幕上 (ID3)
- 从屏幕上抬起拇指 (ID0)
- 获取剩余指针中最近接触过屏幕的 x 和 y
请不要链接到任何官方的 Android 文档或博客,我已经阅读了很多次,但我仍然不明白如何实现这一点。另外,如果我对指针ID的理解不正确,请纠正我。
【问题讨论】:
标签: android pointers multi-touch touchscreen ontouch