ScrollView с видом детей, как перехватить прокрутку условно
У меня есть контейнерViewGroup
Давайте назовем этоэкран внутриScrollView
, Этот контейнерный вид содержит ряд другихViews
давайте назовем ихвиджетыи некоторые из них заинтересованы в том, чтобы предотвратить прокрутку ScrollView и использовать MotionEvent самостоятельно (например, панорамируемое изображение)
Я не могу понять, какую стратегию перехвата событий использовать.ScrollView
всегда обрабатывает событие, прежде чем дети, или дети обрабатывают событие, ноscrollview
выключен.
Я читал о выдачеgetParent().requestDisableInterceptTouchEvent()
в дочерних представлениях, если это представление хочет захватить событие, но ихonTouchEvent
не называется, я полагаю, потому чтоScrollView
поглотил событие заранее. Я думаю, тот факт, что у меня есть 2 уровня слоев (контейнер + виджеты) мешает этому работать, я полагаю, контейнерViewGroup
должен сыграть здесь важную роль, но я не могу понять, какая ...
Могу ли я знать, наScrollView's
onInterceptTouchEvent
уровень, какой виджет на контейнереviewGroup
был тронут, чтобы решить, должен ли я перехватить или нет?
или же...
Как можно «виджет» слоивViewGroup
получить событие раньшеScrollView
так что я могу позвонитьgetParent().onRequestDisableInterceptTouch()
... либо этоgetParent().getParent().onRequestDisableInterceptTouch()
?
заранее спасибо
Я прочитал похожие вопросы, но не повезло ...Обрабатывать сенсорные события в ScrollView Android