在Objective-C中,这段代码可以很好地绘制一个地址,并找到经度和纬度坐标:
NSString *address = @"1 Infinite Loop,CA,USA"; CLGeocoder *geocoder = [[CLGeocoder alloc] init]; [geocoder geocodeAddressString:address completionHandler:^(NSArray* placemarks,NSError* error){ // Check for returned placemarks if (placemarks && placemarks.count > 0) { CLPlacemark *topResult = [placemarks objectAtIndex:0]; // Create a MLPlacemark and add it to the map view MKPlacemark *placemark = [[MKPlacemark alloc] initWithPlacemark:topResult]; [self.mapView addAnnotation:placemark]; [placemark release]; } [geocoder release]; }];
我一直在搜索与Swift这样做的日子?有人可以指出我的方向正确吗?你能否解释一个用户是否需要一个互联网连接才能使其工作。对不起,如果这些问题听起来有点基础,但是我对这一点很新,每天都在学习。
我明白我必须使用这个代码,但找不到一种方法来实现它
func geocodeAddressString(_ addressString: String!,completionHandler completionHandler: CLGeocodeCompletionHandler!)
尝试像
var address = "1 Infinite Loop,USA" var geocoder = CLGeocoder() geocoder.geocodeAddressString(address,{(placemarks: [AnyObject]!,error: NSError!) -> Void in if let placemark = placemarks?[0] as? CLPlacemark { self.mapView.addAnnotation(MKPlacemark(placemark: placemark)) } })
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。