Как нарисовать MKMarkerAnnotationView в UIImage
Как нарисовать MKMarkerAnnotationView
к UIImage
? Он нарезан сверху без причины.
//providing fake annotation for rendering mkmarkerannotationview
@interface FakeAnnotation : NSObject<MKAnnotation>
@property (nonatomic) CLLocationCoordinate2D coordinate;
@end
- (void)draw
{
FakeAnnotation *annotation = [FakeAnnotation new];
annotation.coordinate = CLLocationCoordinate2DMake(47, 17);
UIGraphicsImageRenderer *renderer = [[UIGraphicsImageRenderer alloc] initWithSize:CGSizeMake(256, 256)];
UIImage *image = [renderer imageWithActions:^(UIGraphicsImageRendererContext * _Nonnull rendererContext) {
MKMarkerAnnotationView *marker = [[MKMarkerAnnotationView alloc] initWithAnnotation:nil reuseIdentifier:nil];
[marker drawViewHierarchyInRect: marker.bounds afterScreenUpdates:YES];
}];
}
@конец
PS: [marker.layer.sublayers[1] renderInContext:ctx.CGContext];
Я знаю, что это работает, но знаю, что это неправильный способ.