2011-11-09 116 views
0

触摸发生时,我可以从发生触摸的位置获取CGPoint。现在,我想在现场知道UI元素(无论是控件还是视图),有没有办法做到这一点?在触摸点检测控件/视图

回答

3

您正在寻找的-[UIView hitTest:withEvent:]方法:

返回包含一个指定的点在视图层次结构(包括自身)接收器的最远的后裔。

+0

很酷谢谢!甚至更进一步,我如何判断给定的CGPoint是否在两个视图的重叠区域内?或者在此之前,我怎样才能得到两个视图的重叠矩阵? – tom

+0

查看[CGGeometry参考]中的CGRectIntersection和CGRectContainsPoint(http://developer.apple.com/library/ios/#DOCUMENTATION/GraphicsImaging/Reference/CGGeometry/Reference/reference.html)。你还需要[' - [UIView convertRect:fromView:]'](http://developer.apple.com/library/ios/#documentation/uikit/reference/uiview_class/UIView/UIView.html#//apple_ref/DOC/UID/TP40006816-CH3-BBCDBGGG)。 –