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

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

 int action2 = event.getAction();

最佳答案

ACTION_MASK用于分隔实际 Action 和指针标识符(例如,第一根手指触摸,第二根手指触摸等)。getAction()中返回的值的前8位是实际 Action 部分,因此,当您按位与之时如果使用action mask(= 11111111 = 255 = 0xff),则只剩下操作,而没有指针信息。

这里要记住,&用作算术运算符(按位),而不是逻辑运算符(单个&&&一样,在Java中是完全有效的逻辑运算符)。

关于android - 使用MotionEvent.getAction()方法的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16464187/

10-10 18:01