如何检查图钉是否在地图的可见区域(MKMapView)?
问问题
1263 次
1 回答
3
pin 是 a MKPinAnnotationView
,它扩展自MKAnnotationView
并具有一个属性annotation
(符合协议MKAnnotation
)。这样的注释本身有另一个属性coordinate
。
只需将此类坐标的纬度/经度与您的地图区域进行比较。
这样的事情应该这样做:
double minLong = myMap.region.center.longitude - myMap.region.span.longitudeDelta/2.0;
double maxLong = myMap.region.center.longitude + myMap.region.span.longitudeDelta/2.0;
double minLat = myMap.region.center.latitude - myMap.region.span.latitudeDelta/2.0;
double maxLat = myMap.region.center.latitude + myMap.region.span.latitudeDelta/2.0;
BOOL isPinInRegion = myPinCoordinates.longitude>=minLong && myPinCoordinates.longitude<=maxLong && myPinCoordinates.latitude>=minLat && myPinCoordinates.latitude<=maxLat;
于 2010-04-07T12:33:18.930 回答