【发布时间】:2014-01-04 08:22:43
【问题描述】:
所以我有一个简单的应用程序,它将地址作为字符串传递给视图,然后使用
- (CLLocationCoordinate2D) geoCodeUsingAddress:(NSString *)address
{
double latitude = 0, longitude = 0;
NSString *esc_addr = [address stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *req = [NSString stringWithFormat:@"http://maps.google.com/maps/api/geocode/json?sensor=false&address=%@", esc_addr];
NSString *result = [NSString stringWithContentsOfURL:[NSURL URLWithString:req] encoding:NSUTF8StringEncoding error:NULL];
if (result) {
NSScanner *scanner = [NSScanner scannerWithString:result];
if ([scanner scanUpToString:@"\"lat\" :" intoString:nil] && [scanner scanString:@"\"lat\" :" intoString:nil]) {
[scanner scanDouble:&latitude];
if ([scanner scanUpToString:@"\"lng\" :" intoString:nil] && [scanner scanString:@"\"lng\" :" intoString:nil]) {
[scanner scanDouble:&longitude];
}
}
}
CLLocationCoordinate2D center;
center.latitude = latitude;
center.longitude = longitude;
return center;
}
在模拟器上效果很好。一旦我将它加载到我的手机上,我放置的 pin 的坐标不再是地址的纬度/经度,而是 0,0。
发生了什么事?提前致谢。
【问题讨论】:
-
你在什么操作系统上运行这个设备和模拟器?
标签: ios mkmapview ios-simulator geocoding clgeocoder