1

我在 relativelayout 中有 3 个 Imageview,并且我为所有 ImageView 添加了 onTouchListener

现在,当我在任何图像视图上按下手指时,onTouchListener 被触发,它工作正常,当我在不抬起 ACTION_MOVE 的情况下移动手指时,触摸被触发,一切正常。

但是,当我将手指移到 imageview 之外时,仍然会触发 ACTION_MOVE :(

当手指移到 ImageView 之外时,我不希望 ACTION_MOVE,另一方面,如果我的手指移到其他一些 ImageView,则应该从该 ImageView 触发 ACTION_MOVE 触摸,因为为所有 ImageView 添加了 TouchListener

4

1 回答 1

2

在收到 ACTION_CANCEL 或 ACTION_OUTSIDE MotionEvent 后,您应该停止响应 ACTION_MOVE。当用户将手指移出视图边界时,会触发 ACTION_OUTSIDE。ACTION_CANCEL 也被触发,此外还涵盖了父 ViewGroup 窃取触摸事件的情况。

主要是,像 ACTION_UP 一样对待 ACTION_CANCEL,你会很高兴的。

于 2014-11-13T06:33:18.647 回答