不仅iOS可以调用苹果地图,我们也可以借助谷歌的Web地图API开发地图应用,但这里所涉及的技术都是Web技术,而非本地技术。那么如何调用谷歌Web地图呢? 今天南昌APP制作开发公司小编就来为大家介绍一下。
使用谷歌提供的Web地图相关代码如下:
@IBAction func geocodeQuery(sender: AnyObject) {
if (self.txtQueryKey.text == nil) {
return
}
var geocoder = CLGeocoder()
geocoder.geocodeAddressString(self.txtQueryKey.text,
completionHandler: { (placemarks, error) -> Void in
if placemarks.count > 0 {
NSLog("查询记录数:%i", placemarks.count)
let placemark = placemarks[0] as CLPlacemark
let coordinate = placemark.location.coordinate
let urlString = NSString(format:"http://maps.google.com/maps?q=%f,%f",
coordinate.latitude,
coordinate.longitude) ①
let url = NSURL(string: urlString)! ②
UIApplication.sharedApplication().openURL(url) ③
}
//关闭键盘
self.txtQueryKey.resignFirstResponder()
})
}
- (IBAction)geocodeQuery:(id)sender {
if (self.txtQueryKey.text == nil || [self.txtQueryKey.text length] == 0) {
return;
}
CLGeocoder *geocoder = [[CLGeocoder alloc] init];
[geocoder geocodeAddressString:self.txtQueryKey.text
completionHandler:^(NSArray *placemarks, NSError *error) {
NSLog(@"查询记录数:%lu",[placemarks count]);
if ([placemarks count] > 0) {
CLPlacemark* placemark = placemarks[0];
CLLocationCoordinate2D coordinate = placemark.location.coordinate;
NSString *urlString = [NSString stringWithFormat:
@"http://maps.google.com/maps?q=%f,%f",
coordinate.latitude,
coordinate.longitude]; ①
NSURL *url = [NSURL URLWithString:urlString]; ②
[[UIApplication sharedApplication] openURL:url]; ③
//关闭键盘
[_txtQueryKey resignFirstResponder];
}
}];
}
上述代码的调用关键是①、②、③这3行代码。第①行代码设置url访问字符串,其中q后面是参数, %f和%f 分别代表纬度和经度。第②行代码用于构造一个URL对象。第③行代码使用内置浏览器打开这个URL。
运行结果如下图所示。
谷歌Web地图
以上就是调用谷歌Web地图的方法,小编就先介绍到这里了。了解更多关于南昌APP开发、网站建设等方面的知识,欢迎来电咨询百恒网络,我们专业为您服务!