2010-04-07 15 views

Répondre

3

Une broche est un MKPinAnnotationView, il étend depuis MKAnnotationView et a une propriété annotation (qui est conforme au protocole MKAnnotation). Une telle annotation a elle-même une autre propriété coordinate.

Il suffit de comparer la latitude/longitude de cette coordonnée à la région de votre carte.

quelque chose comme ça devrait le faire:

 
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;

+0

Merci, c'était simple. – Mustafa

+0

merci l'homme .. vous avez sauvé mon temps .. – EmptyStack