Android: обработка сенсорного события для перекрывающихся представлений

У меня есть перекрывающийся вид, который охватывает весь экран. Я хочу вызвать некоторые события, когда пользователь делает какой-либо жест над этим перекрывающимся представлением, например, прокручивая, перемещая палец... что угодно... в то время как перекрывающееся представление будет обрабатывать событие касания. Но я хочу, чтобы другие представления за/под этим перекрывающимся представлением обрабатывали событие касания, если пользователь просто нажимает один раз (не проводит пальцем, не перемещается).

Все, что я хочу, это если есть движение, перекрывающееся представление будет обрабатывать событие касания, если нет, то другие представления под этим перекрывающимся представлением будут обрабатывать событие касания.

как я могу это сделать?

ПРИМЕЧАНИЕ. Я пытаюсь сделать что-то вроде drawerlayout. Помните? мы можем щелкнуть эти компоненты в макете ящика. Но помимо этого, пролистывание этих компонентов также приводит к сворачиванию/перемещению макета ящика. И я заметил, что drawerlayout имеет свойство android clickable="false", но он все еще может обрабатывать событие касания (MotionEvent.ACTION_MOVE), но когда я пробую его на другом макете и возвращаю false, он обрабатывает только MotionEvent.ACTION_DOWN


person dhir    schedule 17.02.2016    source источник
comment
Попробуйте добавить прослушиватель жестов в onTouch перекрывающегося представления, а для нижнего представления добавьте прослушиватель onClick.   -  person Sanjay Hirani    schedule 17.02.2016


Ответы (1)


Я не знаю вашей цели, но вы можете попробовать использовать атрибут follow

Android: дубликатParentState = "истина"

person Huỳnh Ngọc Bang    schedule 17.02.2016
comment
Я пытаюсь сделать что-то вроде drawerlayout. Помните? мы можем обрезать эти компоненты в выдвижном макете. Но помимо этого, пролистывание этих компонентов также приводит к сворачиванию/перемещению макета ящика. И я заметил, что drawerlayout имеет свойство android clickable=false, но он все еще может обрабатывать событие касания (MotionEvent.ACTION_MOVE), но когда я пробую его на другом макете и возвращаю false, он обрабатывает только MotionEvent.ACTION_DOWN - person dhir; 17.02.2016