Android: событие касания не получено родительским представлением
У меня есть относительный макет R1 в качестве пользовательского представления для расширяемого представления списка.
Теперь внутри R1, у меня есть один вид изображения I1 и другой относительный макет R2, оба являются братьями и сестрами.
Я установил на слушателей щелчка для R2 и I1. И все работает отлично. Но я хочу переместить весь пользовательский вид R1 при определенных условиях касания. Поэтому я установил OnTouchListener для R1. Но когда я прикасаюсь к элементу списка, R1 никогда не получает его.
Я пытался искать, но ничего не работает. Может кто-нибудь помочь мне выяснить, как получить сенсорное событие, полученное R1, а затем, если оно не использует его, то оно должно быть передано в I1 и R2.
Спасибо солнышко
1 ответ
Вам необходимо реализовать onInterceptTouchEvent
и вернуться true
когда вы хотите перехватить сенсорное событие.
События касания отправляются в ViewGroup onInterceptTouchEvent
, Если это вернется false
события касания затем передаются onTouchEvent
метод каждого дочернего View этой ViewGroup в обратном порядке рисования. Если ни один ребенок не возвращается true
из этого метода, то ViewGroup получает событие в своем onTouchEvent
,
http://developer.android.com/training/gestures/viewgroup.html