URLに基づいてMKPinAnnotationViewの画像をプログラムで設定することは可能ですか? これまでのところ、私はこれを持っています:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation {
static NSString *identifier = @"infl8Node";
if ([annotation isKindOfClass:[infl8Node class]]) {
MKPinAnnotationView *annotationView = (MKPinAnnotationView *) [_mapView dequeueReusableAnnotationViewWithIdentifier:identifier];
if (annotationView == nil) {
annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:identifier];
} else {
annotationView.annotation = annotation;
}
annotationView.enabled = YES;
annotationView.canShowCallout = YES;
annotationView.image = [UIImage imageNamed:@"invisible.png"];
annotationView.animatesDrop = YES;
//Add image from url
NSURL *url = [NSURL URLWithString: @"http://cdn2.raywenderlich.com/downloads/arrest.png"];
UIImage *image = [UIImage imageWithData: [NSData dataWithContentsOfURL:url]];
UIImageView *imgView = [[UIImageView alloc] initWithImage:image];
[annotationView addSubview:imgView];
return annotationView;
}
return nil;
}
ただし、次のような結果になります。
誰かがこれを行ったことがありますか、またはこれを達成する方法について良い考えを持っていますか?