全部服务产品
开发者频道
定价
登录
路况事件
下载开发文档
一、BMKMapView相关
1. BMKMapView新增控制路况事件图层是否展示接口
#import "BMKMapView.h"
/// 地图是否展示路况事件图层默认NO,since 6.6.3
@property (nonatomic, assign) BOOL showTrafficUGCLayer;
二、BMKMapViewDelegate相关
1. 点击地图上poi代理回调补充路况事件相关字段
/// 点中底图标注后会回调此接口
/// @param mapView 地图View
/// @param mapPoi 标注点信息
- (void)mapView:(BMKMapView *)mapView onClickedMapPoi:(BMKMapPoi *)mapPoi;
2. BMKMapPoi 新增字段
/// Poi点路况信息
@property (nonatomic, assign) BMKTrafficUGCType trafficUGCType;
3. 新增枚举值
typedef enum {
BMKTrafficUGCTypeNoUGC = 0, /// 非路况事件
BMKTrafficUGCTypeConstruction, /// 道路施工
BMKTrafficUGCTypeJam, /// 道路拥堵
BMKTrafficUGCTypeBlocking, /// 道路封闭
BMKTrafficUGCTypeEmergency /// 道路应急事故
} BMKTrafficUGCType;
三、使用示例
/// 1.创建地图
BMKMapView *mapView = [[BMKMapView alloc] initWithFrame:self.view.frame];
/// 2.设置地图代理
mapView.delegate = self;
// 3.设置地图显示路况事件图层
mapView.showTrafficUGCLayer = YES;
/// 4.在点击地图poi代理回调中处理相关数据
- (void)mapView:(BMKMapView *)mapView onClickedMapPoi:(BMKMapPoi *)mapPoi {
NSLog(@"点击POI:coordinate -%@ lon:%@,lat:%@", mapPoi.text, @(mapPoi.pt.longitude), @(mapPoi.pt.latitude));
if (mapPoi.trafficUGCType != BMKTrafficUGCTypeNoUGC) {
switch (mapPoi.trafficUGCType) {
case BMKTrafficUGCTypeConstruction:
NSLog(@"当前位置道路施工");
break;
case BMKTrafficUGCTypeJam:
NSLog(@"当前位置道路拥堵");
break;
case BMKTrafficUGCTypeBlocking:
NSLog(@"当前位置道路封闭");
break;
case BMKTrafficUGCTypeEmergency:
NSLog(@"当前位置有道路应急事故");
break;
default:
break;
}
}
}

上一篇

事件交互

下一篇

方法交互

本篇文章对您是否有帮助?