ScrollView z widokiem dzieci, jak warunkowo przechwycić przewijanie

Mam pojemnikViewGroup, nazwijmy toekran wewnątrz aScrollView. Ten widok kontenera zawiera wiele innychViews nazwijmy jewidżety, a niektórzy z nich są zainteresowani uniemożliwieniem przewijania ScrollView i korzystania z MotionEvent (np. panoramiczny obraz)

Nie mogę znaleźć właściwej strategii przechwytywania zdarzeń.ScrollView zawsze przetwarza zdarzenie przed dziećmi lub dzieci przetwarzają zdarzenie, alescrollview jest niepełnosprawny.

Czytałem o wydawaniugetParent().requestDisableInterceptTouchEvent() w widokach dziecka, jeśli ten widok chce uchwycić zdarzenie, ale ichonTouchEvent nie nazywa się, jak przypuszczam, ponieważScrollView wcześniej pochłonął wydarzenie. Przypuszczam, że fakt, że mam 2 poziomy warstw (widżety kontenera +) zapobiega temu, jak sądzę, kontenerowiViewGroup musi tu odgrywać ważną rolę, ale nie wiem, który ...

Czy mogę wiedzieć, wScrollView's onInterceptTouchEvent poziom, który widget na kontenerzeviewGroup został dotknięty, aby zdecydować, czy powinienem przechwycić, czy nie?

lub...

W jaki sposób warstwy „widżetu”wViewGroup zdobądź wydarzenie wcześniejScrollView więc mogę zadzwonićgetParent().onRequestDisableInterceptTouch() ... Albo to jestgetParent().getParent().onRequestDisableInterceptTouch()?

Z góry dziękuję

Czytałem powiązane pytania, ale nie mam szczęścia ...Obsługa zdarzeń dotykowych w ScrollView Android

questionAnswers(2)

yourAnswerToTheQuestion