gpt4 book ai didi

ios - 如何在 Swift (iOS) 中使用 MKSnapshotter

转载 作者:可可西里 更新时间:2023-11-01 02:20:01 28 4
gpt4 key购买 nike

我目前正在尝试从 MapKit 实现 MKSnapshotter。我想使用苹果 map 创建我在 map View (街景)中找到的位置的快照。

这是我目前的代码:

    var options: MKMapSnapshotOptions = MKMapSnapshotOptions();
options.region = self.attractionDetailMap.region;
options.size = self.attractionDetailMap.frame.size;
options.scale = UIScreen.mainScreen().scale;

var fileURL:NSURL = NSURL(fileURLWithPath: "path/to/snapshot.png")!;
var snapshotter:MKMapSnapshotter = MKMapSnapshotter();
snapshotter.startWithCompletionHandler { (snapshot:MKMapSnapshot!, error:NSError!) -> Void in
if(error != nil) {
println("error: " + error.localizedDescription);
return;
}
var image:UIImage = snapshot.image;
var data:NSData = UIImagePNGRepresentation(image);
data.writeToURL(fileURL, atomically: true);

var pin:MKAnnotationView = MKAnnotationView();
UIGraphicsBeginImageContextWithOptions(image.size, true, image.scale);
image.drawAtPoint(CGPointMake(0.0, 0.0));
var rect:CGRect = CGRectMake(0.0, 0.0, image.size.width, image.size.height);
for annotation in self.attractionDetailMap.annotations {
var point:CGPoint = snapshot.pointForCoordinate(annotation.coordinate);
}
}

当我尝试指出一个点时 (var point:CGPoint = snapshot.pointForCoordinate(annotation.coordinate);),出现错误:'coordinate' is unavailable: APIs deprecated as of iOS7 and earlier are unavailable in Swift。

基本上,由于关于如何在 swift 中使用 MKSnapshotter 的教程/指南并不多,如果我能在 swift 中看到 MKSnapshotter 的标准结构,将不胜感激。我觉得我走在正确的道路上,但我被困在最后一行代码,坦率地说,它甚至不起作用。

谢谢!

最佳答案

您需要将注解转换为正确的类型。

for annotation in self.attractionDetailMap.annotations as! [MKAnnotation] {
let point = snapshot.pointForCoordinate(annotation.coordinate)
}

关于ios - 如何在 Swift (iOS) 中使用 MKSnapshotter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31352377/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com