我有一个{List}作为孩子的FiewFlipper
。我已经找到了一种方法来拦截GestureDetector
触摸事件到达孩子之前的方法 - 一种全局拦截ViewFlipper上的触摸事件的方法。
扩展FiewFlipper并实现onInterceptTouchEvent (MotionEvent ev)
似乎是解决方案。这适用于大多数孩子。但是,当listview 开始滚动时,onInterceptTouchEvent会停止接收事件。
我知道可以设置每个listview的OnTouchListener,但这会破坏我正在尝试创建的简单层次结构。
答案 0 :(得分:0)
嗯。我曾经有一个带有单个列表视图的活动,在那里我通过fling手势重新填充了适配器。我是通过实现活动的dispatchTouchEvent方法来实现的:
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
super.dispatchTouchEvent(ev);
return gestureDetector.onTouchEvent(ev);
}
列表视图仍然收到正常事件,但我的gestureDectector也尝试了它们。也许类似的方法对你有用吗?
答案 1 :(得分:0)
正如adamp所评论的,这种行为是有意的,不需要进行斗争。我将手势监听器应用于子元素。