If you assign your own image to the image property. When an annotation is displayed, the image is displayed centered on the coordinate of the target map. If you do not want the image centered on the map coordinate, you can use the centerOffset property to move the center point horizontally and vertically in any direction.
Thus, a custom image is displayed only in the center of your target coordinates.
MKAnnotationView* aView = [[[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"MyCustomAnnotation"] autorelease]; aView.image = [UIImage imageNamed:@"myimage.png"]; aView.centerOffset = CGPointMake(10, -20);
Source: apple class link for MKMapView
Aravindhan
source share