切换地图类型

Android 地图 SDK 底图类型目前共三种:普通地图、卫星地图 和暗色地图
TencentMap 类提供图层类型常量,详细如下:

常量 说明
TencentMap MAP_TYPE_NORMAL 普通地图(默认地图类型)
TencentMap MAP_TYPE_SATELLITE 卫星地图
TencentMap MAP_TYPE_DARK 暗色地图

下面就3种地图类型做简单介绍:


普通地图

普通地图的信息包括精细的面区域信息,道路信息、建筑物及重要的POI(兴趣点–地图上的图标及文字)
设置显示普通地图的示例代码如下:

tencentMap.setMapType(TencentMap.MAP_TYPE_NORMAL);

显示效果如下:



卫星地图

设置卫星地图代码如下:

tencentMap.setMapType(TencentMap.MAP_TYPE_SATELLITE);

效果图如下:



暗色地图

设置暗色地图代码如下:

tencentMap.setMapType(TencentMap.MAP_TYPE_DARK);

效果图如下:



实时路况

腾讯地图SDK还提供了实时路况图层,可以为提供实时交通数据的城市展示实时交通状况。

//开启路况服务
tencentMap.setTrafficEnabled(true);

效果图如下:



路况自定义样式

腾讯地图SDK在4.3.9.3版本中添加了路况样式自定义功能,该功能支持自定义路况线段的颜色、宽度、描边等。


TrafficStyle说明

TrafficStyle 类是路况样式的自定义项,可自行配置一种或多种交通状态的样式(如颜色、线宽和描边)。

属性 说明
setCongestedColor 设置路况拥堵的颜色
setCongestedStrokeColor 设置路况拥堵的描边颜色
setSeriousCongestedColor 设置路况极度拥堵的颜色
setSeriousCongestedStrokeColor 设置路况极度拥堵的描边颜色
setSlowColor 设置路况慢行的颜色
setSlowStrokeColor 设置路况缓行的描边颜色
setSmoothColor 设置路况畅通的颜色
setSmoothStrokeColor 设置路况畅通描边的颜色
setStrokeWidth 设置路况描边颜色的宽度
setWidth 设置路况填充颜色的宽度

使用自定义路况样式

  1. 初始化 TrafficStyle并设置配色

    TrafficStyle trafficStyle = new TrafficStyle();
    //交通顺畅配色
    trafficStyle.setSmoothColor(int smoothColor);
    trafficStyle.setSlowColor(int slowColor);
    ...
    
  2. 赋值到 TencentMapOptions 类中

    TencentMapOptions mapOptions = new TencentMapOptions();
    mapOptions.setTrafficStyle(trafficStyle);
    
  3. 通过MapView 展示到效果

    MapView mMapView = new MapView(this, mapOptions);
    



注意事项


1. 路况图TencentMap.MAP_MODE_NORMAL_TRAFFIC 从4.1.2弃用,建议使用TencentMap.setTrafficEnabled(true)。

2.地图sdk请求瓦片图是通过http协议的,所以需要在manifest文件里面要加 android:usesCleartextTraffic="true"。

3.路况样式为地图配置中的一种,需在地图初始化时传入,地图初始化后无法再更改样式。

4.只有setMapType在 MAP_TYPE_NORMAL 时,才修改地图个性化样式。

这篇文章对您解决问题是否有帮助?

已解决
未解决