【发布时间】:2011-05-23 03:28:55
【问题描述】:
我的 GestureListener 类在 onSingleTap() 或 onFling() 等方法中接收到 MotionEvent。有没有办法从这个事件中确定底层视图?
背景:我有一个包含许多子视图的 LinearLayout。此 LinearLayout 上有一个触摸侦听器,它调用手势检测器。因此,当用户在任何子视图上做手势时,LinearLayout 的手势检测器会收到一个 MotionEvent。但问题是,因为有很多孩子,我需要确切地知道用户点击了哪个孩子。但是我找不到将坐标转换为视图的方法。有没有办法做到这一点?
一个丑陋的解决方案:动态添加孩子。所以我可以将所有的孩子保存在一个列表中,然后当一个 MotionEvent 来临时,我可以遍历列表并查看该点是否在一个孩子内部。但我不喜欢这个主意。有没有更好的办法?
【问题讨论】:
标签: android