我试图理解Android如何处理触摸事件,但有些困惑。据我所知,触摸事件被发送到根视图并向下传递到子视图。
我有一个FrameLayout
作为Fragment
的容器。第一个片段视图是一个ScrollView
,第二个是某种Gallery
(HorizontalListView),最后一个也是FrameLayout
。每次布局中只有一个片段。
我想要做的是识别用户在屏幕上的滑动手势,以便用于应用程序。我希望计数滑动次数,并在某些滑动次数后执行某些操作。
我尝试在顶部的FrameLayout
上放置一个OnTouchListener
,但当子项为ScrollView
或Gallery
时,它不会被调用。我尝试在onTouch
的结尾处返回false
和true
,但结果相同-它永远不会被调用。
我该怎么做呢? 我只想“透明地”处理触摸事件并像我从未触碰它们一样传递它们。
FrameLayout
,覆盖了你提到的方法,并将MotionEvent
发送到GestureDetector
。所有这些都有点令人困惑。谢谢! - Elad92onTouchEvent(MotionEvent me)
。 - CrandellWS