Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Refresh MKAnnotationView on a MKMapView

I'd like to a-synchronically load images for my custom MKAnnotationView; I'm already using the EGOImageView-framework (it goes very well with UITableViews), but I fail to make it work on MKMapView. Images seem to be loaded, but I cannot refresh them on the map - [myMap setNeedsDisplay] does nothing.

like image 677
cocoapriest Avatar asked Nov 07 '09 22:11

cocoapriest


1 Answers

I haven't tried it myself, but it might work:
Get a view for annotation using MKMapView - (MKAnnotationView *)viewForAnnotation:(id <MKAnnotation>)annotation method and set new image to it.

Edit: Tried to do that myself and this approach worked fine for me:

//  Function where you got new image and want to set it to annotation view for (MyAnnotationType* myAnnot in myAnnotationContainer){     MKAnnotationView* aView = [mapView viewForAnnotation: myAnnot];     aView.image = [UIImage imageNamed:@"myJustDownloadedImage.png"]; } 

After calling this method all annotations images were updated.

like image 133
Vladimir Avatar answered Oct 19 '22 14:10

Vladimir