如何将纬度经度转换为CLLocationCoordinate2D

10

我想将经纬度转换为CLLocationCoordinate2D

self.currentLocation = {.latitude = 0.0, .longitude = 0.0};

这给我报错 "Expected expression"。

我做错了什么?


你的代码看起来很好。尝试将表达式转换为CLLocationCoordinate2D。看看我下面的答案是否能帮到你! - EmptyStack
4个回答

25

使用 CLLocationCoordinate2DMake(CLLocationDegrees latitude, CLLocationDegrees longitude) 创建坐标。


7

虽然您可以使用 CLLocationCoordinate2DMake,但需要注意它仅在 iOS 4.0 及更高版本中可用。您可以尝试手动创建:

CLLocationCoordinate coordinate;
coordinate.latitude = 0.0;
coordinate.longitude = 0.0;

self.currentLocation = coordinate;

6

您的代码看起来是正确的,不应该会抛出任何错误/警告。请确保self.currentLocation 是一个CLLocationCoordinate2D类型的变量。尝试像下面这样将表达式进行强制类型转换,

self.currentLocation = (CLLocationCoordinate2D){.latitude = 0.0, .longitude = 0.0};

或者你也可以使用CLLocationCoordinate2DMake方法。


1
更新 > Swift 4
let loc_coords = CLLocationCoordinate2DMake(47.601089,-52.740439)

如需更多详情请查看苹果开发者网站: CLLocationCoordinate2DMake

谢谢


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接