浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。

iOS 地图SDK

百度地图SDK是一套应用程序接口, 通过调用地图SDK接口,开发者可以轻松访问百度地图的服务和数据,构建功能丰富、交互性强的地图类应用程序。

地图SDK提供了3种预置的地图类型,包括普通地图、卫星图、空白地图。另外提供了2种常用图层实时路况图以及百度城市热力图

目前百度地图SDK所提供的地图等级为3-21级,所包含的信息有建筑物、道路、河流、学校、公园等内容。

本章节主要介绍如何切换这3种地图类型,以及如何打开实时路况图以及添加城市热力图。
基础地图

百度地图SDK为您提供了3种类型的地图资源(普通矢量地图、卫星图和空白地图),BMKMapType提供图层类型常量,详细如下:

类型名称
说明
BMKMapTypeStandard 标准地图(包含3D地图)
BMKMapTypeSatellite 卫星地图
BMKMapTypeNone 空白地图

开发者可以利用BMKMapView中的setMapType()方法来设置地图类型,下面做简单展示。

标准地图

基础的道路地图。显示道路、建筑物、绿地以及河流等重要的自然特征。

设置标准地图的代码如下:

[_mapView setMapType:BMKMapTypeStandard]; //切换为标准地图

卫星地图

设置卫星地图的代码如下:

[_mapView setMapType:BMKMapTypeSatellite]; //切换为卫星地图

空白地图

使用空白地图, 基础地图将不会被渲染。在地图类型中设置为BMKMapTypeNone,将不会使用流量下载基础地图图层。支持叠加任何覆盖物。

适用场景:与瓦片图层(tileOverlay)一起使用,节省流量,提升自定义瓦片图下载速度。

设置空白地图的代码如下:

_mapView.mapType = BMKMapTypeNone;//设置地图为空白类型

如果您对自定义瓦片图的使用感兴趣,可以参考此文档相应部分的使用介绍。

实时路况图

全国范围内已支持绝大部分城市实时路况查询。标准地图和卫星地图,均支持叠加实时路况图。

路况图依据实时路况数据渲染,开启实时路况的核心代码如下:

//打开实时路况图层  
[_mapView setTrafficEnabled:YES];

关闭实时路况的核心代码如下:

//关闭实时路况图层  
[_mapView setTrafficEnabled:NO];

路况图可以设置按钮,按需打开或者关闭实时路况图。

百度城市热力图

百度城市热力图是用不同颜色的区块叠加在地图上描述人群分布、密度和变化趋势的一个产品。地图层级介于11-20级时,可显示城市热力图。

百度城市热力图的性质及使用与实时路况图类似,只需要简单的接口调用,即可在地图上展现样式丰富的百度城市热力图。

在地图上开启百度城市热力图的核心代码如下:

//打开百度城市热力图图层(百度自有数据)
[_mapView setBaiduHeatMapEnabled:YES];
	
//关闭百度城市热力图图层(百度自有数据)
[_mapView setBaiduHeatMapEnabled:NO];

此外,您也可以利用自有数据,构建属于自己的热力图,提供丰富的展示效果。添加自定义热力图的方式请参考此文档相应部分的使用介绍。

注意:在21级时,不支持显示卫星图、热力图、交通路况图层。

当地图从20级放大到21级后,卫星图、热力图、交通路况图层将不再显示;缩小到20级后,卫星图、热力图、交通路况图层,会再正常显示。