使用MotionEvent.getAction()方法的区别

时间:2013-05-09 14:28:02

标签: android multi-touch motionevent

以下两种方法有什么区别?

 int action1 = event.getAction() & MotionEvent.ACTION_MASK;

 int action2 = event.getAction();

1 个答案:

答案 0 :(得分:14)

ACTION_MASK用于分隔实际动作和指针标识符(例如,第一根手指触摸,第二根手指触摸等)getAction()中返回的值的前8位是实际动作部分,所以当你用action mask(= 11111111 = 255 = 0xff)按位和它时,你只剩下动作而没有指针信息。

请记住&用作算术运算符(按位)而不是逻辑运算符(单&是Java中完全有效的逻辑运算符,&&也是如此).`