Is it possible to have our own image instead of the default pin in MapKit map on iPhone?
I am working on an application which would show friends' locations much like Google Latitude and need to show image of friends at their locations.
It is possible using the JavaScript Google Map but i want to know if someone can give some sample code for MapKit based map.
Yes it is possible. For that u have to use MKAnnotationView instead of MKPinAnnotationView. and do not use annotation.animatesDrop property.
Here are the sample code you can use in viewForAnnotation,
annotation = [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"try"];
annotation.canShowCallout = YES;
annotation.image = [UIImage imageNamed:@"image.png"];
return annotation;
You can also set the frame of the image. For that in above code we have to make this simple changes.
UIImage *pinImage = [UIImage imageNamed:@"image.png"];
UIImageView *imageView = [[[UIImageView alloc] initWithImage:pinImage] autorelease];
imageView.frame = CGRectMake(-20, 0, 40, 30);
[annotation addSubview:imageView];
And we have to comment the line
// annotation.image = [UIImage imageNamed:@"image.png"];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With