Android Studio-操作指针未按预期工作
我正在做一个2D游戏 我有球1和球2。我用手指1轻拍并握住球1,然后用手指2轻拍并握住球2。只要我一直按住那两个手指,两个球都会悬浮在空中 当我松开手指1时,为什么两个球都会掉下来?我检查了System.out.println(),它记录了每当我松开手指1时,第二个手指也会被记录为“动作指针向上”,并且在我松开手指2之前,“动作指针向上”不会注册(为时已晚,球2已经掉了) 代码:i和i2是带2 for循环的IteratorAndroid Studio-操作指针未按预期工作,android,input,Android,Input,我正在做一个2D游戏 我有球1和球2。我用手指1轻拍并握住球1,然后用手指2轻拍并握住球2。只要我一直按住那两个手指,两个球都会悬浮在空中 当我松开手指1时,为什么两个球都会掉下来?我检查了System.out.println(),它记录了每当我松开手指1时,第二个手指也会被记录为“动作指针向上”,并且在我松开手指2之前,“动作指针向上”不会注册(为时已晚,球2已经掉了) 代码:i和i2是带2 for循环的Iterator if(event.getActionMasked()==event.AC
if(event.getActionMasked()==event.ACTION_POINTER_UP || event.getActionMasked()==event.ACTION_UP){
if(arBalls.get(i2).getDragID()==event.getPointerId(i) && arBalls.get(i2).getDrag()){
arBalls.get(i2).endDrag();
};
}
正确的方法是使用正确的指针id
case MotionEvent.ACTION_POINTER_UP: {
if(arBalls.get(i2).getDragID()==event.getPointerId(event.getActionIndex()) && arBalls.get(i2).getDrag()==true){
arBalls.get(i2).endDrag();
}
break;
}
case MotionEvent.ACTION_UP: {
if(arBalls.get(i2).getDragID() == event.getPointerId(event.getActionIndex()) && arBalls.get(i2).getDrag()==true){
arBalls.get(i2).endDrag();
}
break;
}