自定义UIView触摸区域

你好我有一些奇怪的形状,我需要处理touchesBegan方法。 问题是UIViews是正方形的,唯一的办法就是可以声明一个网格,然后检查坐标。 还有其他的方法吗?

在你的UIView子类中实现hitTest:withEvent: 只有当CGPoint在形状内时才返回YES。

看看这个问题的多边形形状: 我如何确定一个2D点是否在一个多边形内?

另外,如果您有机会访问WWDC2012,就如何处理复杂的触摸事件而言,这是非常棒的:

https://developer.apple.com/videos/wwdc/2012/?id=200