使用叠加层的MKMapView到UIImage

时间:2013-10-23 19:23:55

标签: ios cocoa-touch mapkit mkmapsnapshotter

如何使用像MKPolylines这样的叠加来获取MKMapView的UIImage?我尝试了renderInContext和MKMapSnapshotter,但没有在生成的图像中包含地图及其叠加层。 renderInContext在iOS 7中根本不起作用。

1 个答案:

答案 0 :(得分:2)

根据documentation for the MKMapSnapshotter class,重叠和注释不包含在生成的快照中。根据{{​​3}},您可以使用pointForCoordinate自行在快照图片上手动绘制叠加层和注释。

另外,您可能希望发布renderInContext代码。

- 编辑 -

在iOS 7中,他们添加了以下三种新方法,您可能需要尝试使用renderInContext方法:

– snapshotViewAfterScreenUpdates: // Captures view as a snapshot view, which may allow you to draw an image using renderInContet.
– resizableSnapshotViewFromRect:afterScreenUpdates:withCapInsets: // Similar to the previous method, except using a rect.
– drawViewHierarchyInRect:afterScreenUpdates: // Draws the entire view hierarchy, so this may allow you to capture subviews.