2011-07-22 46 views
0

我有一组坐标保存在数组中。我使用反向地理编码如何给变量坐标

我所用的方法,

- (id)initWithCoordinate:(CLLocationCoordinate2D)coordinate altitude:(CLLocationDistance)altitude horizontalAccuracy:(CLLocationAccuracy)hAccuracy verticalAccuracy:(CLLocationAccuracy)vAccuracy timestamp:(NSDate *)timestamp 

我需要转换的纬度,经度CLLocationCoordinate2D。

self.atmLocation.latitude = [tempDict objectForKey:@"Latitude"]; //atmlocation is of type CLLocationCoordinate2D. 

这给了我一个错误“Expression is not assignable”。如何解决这个问题?如果这不可能比请建议任何其他方式,所以我可以使用外部坐标集。

回答

0

tempDict返回一个对象。因此你需要转换它。

尝试self.atmLocation.latitude = [(NSString *)[tempDict objectForKey:@"Latitude"]doublevalue];

从文档

typedef struct { 
    CLLocationDegrees latitude; 
    CLLocationDegrees longitude; 
} CLLocationCoordinate2D; 

typedef double CLLocationDegrees; 
+0

这仍然给了我同样的错误。 – Harsh

+0

将代码粘贴到创建atmLocation和tempDict的位置。 –

+0

您也可以将tempDict的返回类型转换为NSString,然后使用上面的方法。 –