全部服务产品
开发者频道
定价
登录
显示与样式控制
下载开发文档
地图边距设置

司乘同显SDK支持设置地图四周的边距,展示最佳视野区域。

/**
调整地图时需要设置的padding
默认为(30, 30, 80, 30)。意思是标注和路线需要在mapView去除此padding后的区域内实现最佳全览视野
*/
self.sctxManager.mapRegionPadding = UIEdgeInsetsMake(150, 30, 80, 30);
显示元素策略控制

司乘同显SDK支持自定义不同订单状态下,设置需要绘制在地图上的元素类型。

// 设置前往目的地状态仅绘制小车,终点和路线。
[self.sctxManager setMapElementNeedToDrawForOrderStatus:BMK_SCTX_Order_Status_GoToDestination elementToDraw:(BMKSCTXElementToDrawTypeCar | BMKSCTXElementToDrawTypeEndPoint | BMKSCTXElementToDrawTypeDriverRoute)];
视野适配策略控制

司乘同显SDK支持自定义不同订单状态下,设置需要保持在最佳视野内的元素类型。

// 设置前往目的地状态小车,终点和路线需要保持在最佳区域。
[self.sctxManager setMapElementNeedToFitInMapForOrderStatus:BMK_SCTX_Order_Status_GoToDestination elementToFitInMap:(BMKSCTXElementToFitInMapTypeCar | BMKSCTXElementToFitInMapTypeEndPoint | BMKSCTXElementToFitInMapTypeDriverRoute)];
刷新时间间隔控制

司乘同显SDK支持自定义司机车辆位置刷新时间间隔。

/**
车辆位置刷新时间间隔,单位(秒)。
默认2s,值域[2,30],超过边界值后将调整为边界值
*/
self.sctxManager.driverPositionRefreshInterval = 2;
视野自适应的时间间隔控制

司乘同显SDK支持自定义设置最佳视􏰁范围的调整间隔时间和地图显示区域的冻结时间。

/**
用户没有操作时,随着剩余距离的减少,要保证剩余线路、小车和终点及其气泡处于最佳全览视野下,需要SDK自动调整地图显示区域。
此属性用于设置自动调整的时间间隔,如果没有到达下一个时间调整节点,即使当前有需要显示的标注已经超出屏幕范围之外,也不会自动调整地图显示区域。
默认间隔为10秒。最大值为30秒,最小值为5秒;
大于最大值将设置为最大值,小于最小值将设置为最小值
*/
self.sctxManager.mapRegionAutoAdjustTimeInterval = 10;
/**
地图显示区域的冻结时间
用户手动操作地图之后,需要经过一段时间之后,才允许SDK自动调整地图的显示区域。
若设置字段的值为10秒,意味着每次用户操作地图之后,都有10秒钟的冻结时间。这10秒钟之内,SDK不会自动调整地图的显示区域。
默认时间为10秒。最大值为30秒,最小值为10秒
大于最大值将设置为最大值,小于最小值将设置为最小值
*/
self.sctxManager.mapRegionFrozenTime = 10;
弹出框气泡设置

司乘同显SDK支持自定义小车,起点和终点的弹出框气泡。SDK不提供默认样式,乘客端APP自行设置不同订单状态下,不同 Annotation的弹出框气泡,通过上述方法设置之后,司乘同显SDK负责弹出框气泡随⼩车平滑移动。

/**
设置小车弹出框气泡
@param calloutView 气泡显示内容
*/
- (void)updateCarAnnotationInfoWith:(UIView *)calloutView;
/**
设置订单起点Annotation的弹出框气泡
@param calloutView 气泡显示内容
*/
- (void)updateStartAnnotationInfoWith:(UIView *)calloutView;
/**
设置订单终点Annotation的弹出框气泡
@param calloutView 气泡显示内容
*/
- (void)updateEndAnnotationInfoWith:(UIView *)calloutView;
AnnotationView和BMKOverlayView的生成

APP在mapView的 viewForAnnotation 回调方法中调用 BMKSCTXPassengerManager 对象的generateViewForAnnotation方法,由司乘同显服务生成对应的AnnotationView。

/**
APP在mapView对应的viewForAnnotation回调方法中调用此方法
@param annotation 标注
@param mapView 地图
@return 对于BMKSCTXPassengerManager的annotation,返回相应的annotationView,否则返回nil
*/
- (BMKAnnotationView *)generateViewForAnnotation:(id<BMKAnnotation>)annotation onMapView:(BMKMapView *)mapView;

APP在mapView的 viewForOverlay 回调方法中调用 BMKSCTXPassengerManager 对象的generateViewForOverlay方法,由司乘同显服务生成对应的 OverlayView。

/**
APP在mapView对应的viewForOverlay回调方法中调用此方法
@param overlay 覆盖物
@param mapView 地图
@return 对于BMKSCTXPassengerManager的overlay,返回相应的overlayView,否则返回nil
*/
- (BMKOverlayView *)generateViewForOverlay:(id<BMKOverlay>)overlay onMapView:(BMKMapView *)mapView;
调试开关

通过 + (void)setLogEnable:(BOOL)enable 静态方法,控制司乘同显SDK的日志打印功能。该方法需要在 BMKSCTXPassengerManager 实例创建之前调⽤。

// 开启日志打印
[BMKSCTXPassengerManager setLogEnable:YES];

上一篇

订单管理

下一篇

历史轨迹查询

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