如何在同一个地图视图中为注释添加不同的图像

Sam*_*nga 2 iphone annotations mapkit mkmapview mkannotation

我有一个带有多个注释的MapView.但是我需要根据JSON值将不同的图像放到注释中.

在此输入图像描述

这就是我想要做的......需要根据JSON值为引脚添加不同的图像.

是否有人知道如何做到这一点?请帮助,这将非常有帮助.

谢谢

Sha*_*rme 6

您可以使用委托方法:

- (MKAnnotationView*)mapView:(MKMapView*)mapView viewForAnnotation:(id)annotation

并根据您的JSON值,您可以设置图像:以下是我的示例代码:

UIImage * flagImage = nil;

if(Your JSON Values)
flagImage = [UIImage imageNamed:@"darkgreendot.png"];
else if(....)
flagImage = [UIImage imageNamed:@"orangedot.png"];
else
flagImage = [UIImage imageNamed:@"bluedot.png"];

CGRect resizeRect;  
        resizeRect.size = flagImage.size;   
        resizeRect.origin = (CGPoint){0.0f, 0.0f};
        UIGraphicsBeginImageContext(resizeRect.size);
        [flagImage drawInRect:resizeRect];
        UIImage *resizedImage = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();    
        annotationView.image = resizedImage;
Run Code Online (Sandbox Code Playgroud)