Ответ 1
ACTION_MASK
используется для разделения действительного действия и идентификатора указателя (например, касания первого пальца, второго пальца и т.д.) Первые 8 бит значения, возвращаемого в getAction() - это действительная часть действия, и поэтому, когда вы побитовое - и оно с маской действия ( = 11111111 = 255 = 0xff), вы остаетесь только с действием и ни с какой информацией указателя.
Имейте в виду, что &
используется как арифметический оператор (поразрядный), а не логический оператор (единственный &
- вполне допустимый логический оператор в Java, как и &&
). `