android – 获取其他指针的MotionEvent.getRawX / getRawY

前端之家收集整理的这篇文章主要介绍了android – 获取其他指针的MotionEvent.getRawX / getRawY前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我可以得到其他指针的MotionEvent.getRawX()/ getRawY()的值吗?

MotionEvent.getRawX() api reference

api表示使用getRawX / getRawY获取原始X / Y原始坐标,但它只适用于1个指针(最后一个触摸的指针),是否可以获取其他指针的原始X / Y坐标?

解决方法

实际上,API不允许这样做,但可以计算它.尝试:
public boolean onTouch(final View v,final MotionEvent event) {

    int rawX,rawY;
    final int actionIndex = event.getAction() >> MotionEvent.ACTION_POINTER_ID_SHIFT;
    final int location[] = { 0,0 };
    v.getLocationOnScreen(location);
    rawX = (int) event.getX(actionIndex) + location[0];
    rawY = (int) event.getY(actionIndex) + location[1];

}

猜你在找的Android相关文章