设为首页 加入收藏

TOP

【iOS】7.4 定位服务->3.2 地图框架MapKit 功能2:路线规划(导航)(七)
2017-10-11 18:36:24 】 浏览:5096
Tags:iOS 7.4定位 服务 -> 3.2 地图 框架 MapKit 功能 路线 规划 导航
州地标对象             let gzPL = pls?.first             // 1.2 创建圆形的覆盖层数据模型             let circle1 = MKCircle(center: (gzPL?.location?.coordinate)!, radius: 100000)             // 1.3 添加覆盖层数据模型到地图上             self.mapView.add(circle1)                          self.geoCoder.geocodeAddressString("上海") { (pls: [CLPlacemark]?, error) -> Void in                 // 2. 拿到上海地标对象                 let shPL = pls?.first                 // 2.2 创建圆形的覆盖层数据模型                 let circle2 = MKCircle(center: (shPL?.location?.coordinate)!, radius: 100000)                 // 2.3 添加覆盖层数据模型到地图上                 self.mapView.add(circle2)                                  // 3. 调用获取导航线路数据信息的方法                 self.getRouteMessage(gzPL!, endCLPL: shPL!)             }         }     }          // MARK: - ① 根据两个地标,发送网络请求给苹果服务器获取导航数据,请求对应的行走路线信息     func getRouteMessage(_ startCLPL: CLPlacemark, endCLPL: CLPlacemark) {                  // 创建请求导航路线数据信息         let request: MKDirectionsRequest = MKDirectionsRequest()                  // 创建起点:根据 CLPlacemark 地标对象创建 MKPlacemark 地标对象         let sourceMKPL: MKPlacemark = MKPlacemark(placemark: startCLPL)         request.source = MKMapItem(placemark: sourceMKPL)                  // 创建终点:根据 CLPlacemark 地标对象创建 MKPlacemark 地标对象         let endMKPL: MKPlacemark = MKPlacemark(placemark: endCLPL)         request.destination = MKMapItem(placemark: endMKPL)                  // 1. 创建导航对象,根据请求,获取实际路线信息         let directions: MKDirections = MKDirections(request: request)                  // 2. 调用方法, 开始发送请求,计算路线信息         directions.calculate { (response:MKDirectionsResponse?, error:Error?) in                          if error == nil {                 print(response)                                  // MARK: - ② 解析导航数据                 // 遍历 routes (MKRoute对象):因为有多种路线                 for route in (response?.routes)! {                     print(route.advisoryNotices)                     print(route.name, route.distance
首页 上一页 4 5 6 7 8 下一页 尾页 7/8/8
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇【代码笔记】iOS-cell自动变化大小 下一篇iOS scene之间的跳转类型——Segue

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目