在今年早些时候我曾在一个SO问题中发表了这个代码块:
MKPolygonView *polygonView = (MKPolygonView *)[self.mapView viewForOverlay:polygon];
MKMapPoint mapPoint = MKMapPointForCoordinate(tapCoord);
CGPoint polygonViewPoint = [polygonView pointForMapPoint:mapPoint];
if (CGPathContainsPoint(polygonView.path, NULL, polygonViewPoint, FALSE)) {
// do stuff
}
这个方法在iOS7之前运行良好。现在它总是返回false,并且无法检测到路径上的点。
我正在尝试查找任何说明该方法已更改的文档,但找不到任何信息。
有什么想法是为什么它出问题了吗?还是有一个新的解决方案吗?
MKPolygon
不可见,则polygon.path
属性将返回NULL
。这个解决方案非常有效,非常感谢Anna女士! - Padin215